RR-71 | Desenvolvimento Ágil para Web com Ruby on Rails 3
[ 32 horas aula ]
O intuito do curso é desenvolver uma aplicação Web completa, que vá desde o banco de dados até o uso de AJAX em toda sua camada de visualização. O foco é o pragmatismo, com riqueza de detalhes para entendimento da "mágica" por trás do Ruby on Rails. Para tal, o curso provê uma base forte e sólida sobre a linguagem Ruby, indo desde conceitos básicos, duck typing, até técnicas avançadas de metaprogramação para construção de Domain Specific Languages (DSLs).
Ao final do curso, você estará apto a desenvolver uma aplicação completa com Ruby on Rails 3, entendendo todas as facilidades que o framework provê (nada de mágica!), gastando um tempo muito menor que com outras linguagens e frameworks. Tudo isso com recusos de metaprogramação, AJAX, validação, de forma simples, sem XMLs e entregando software de qualidade!
O curso é fruto de anos de experiência da Caelum e seus instrutores com Rails com desenvolvimento de projetos como OndeTrabalhar.Com, projetos open-source como Jetty Rails e Caelum git-reports, consultoria, muitos artigos e eventos na comunidade.
Curso recentemente reformulado para Rails 3!
Esse curso faz parte da Formação Ruby on Rails junto com o RR-75.
Pré-requisitos: Lógica de programação e conhecimento de conceitos de orientação a objetos. Básico de desenvolvimento web: http, html, css, javascript. Desejável alguma experiência com outras tecnologias para desenvolvimento web, como ASP, PHP ou equivalente ao Curso FJ-21.
A opinião de quem fez o RR-71
O que eu mais gostei do curso foi a abordagem de como as coisas funcionam "por trás dos panos" no Rails. Assim o aluno fica sabendo o que a linguagem Ruby faz (o poder do ruby) e como o Rails utiliza todo esse poder do Ruby para criar seus recursos. O melhor curso de desenvolvimento de software que já participei.
Fernando Amorim
Aqui na Boavista serviços tecnológicos precisávamos de um ambiente ágil e dinâmico, para dessa forma desenvolvermos soluções aos nossos clientes com qualidade e rapidez. A Caelum foi super atenciosa no atendimento e nos impressionou no nível técnico do professor - Fabio Kung. Realizamos o curso: RR::11 - Desenvolvimento ágil para Web 2.0 com Ruby on Rails. Na semana passada liberamos nosso primeiro projeto desenvolvido com Rails, foi um sucesso. É claro que encontramos obstáculos no caminho, superamos, e hoje temos um know-how para outros desafios. O Fabio Kung sempre atencioso ao responder meu emails, tirando dúvidas e dando aquela força. Sempre vou indicar a Caelum. Obrigado
Fabio Santiago, Líder de desenvolvimento, Boavista serviços tecnológicos
Próximas Turmas do RR-71
| Data | Período | Cidade | Comentário |
|---|---|---|---|
| 13/09 a 23/09 | Noturno (19:00 as 23:00) | Brasília | |
| 13/09 a 24/09 | Noturno (19:00 as 23:00) | São Paulo | |
| 06/11 a 04/12 | Sábado (9:00 as 17:00) | Rio de Janeiro | Centro |
| 06/11 a 27/11 | Sábado (9:00 as 17:00) | São Paulo | |
| 23/11 a 02/12 | Noturno (18:00 as 22:00) | Rio de Janeiro | Centro |
Conteúdo detalhado do RR-71
Download da apostila do RR-71Agilidade na Web
- A agilidade
- A comunidade Rails
- Bibliografia
- Tirando dúvidas
- Para onde ir depois?
A linguagem Ruby
- A história do Ruby e suas características
- Instalação do interpretador
- Outras implementações de interpretadores Ruby
- Ruby Enterprise Edition
- Interactive Ruby: ruby no terminal
- Tipos e operações básicas
- Desafios
Mais Ruby: classes, objetos e métodos
- Mundo orientado a objetos
- Métodos comuns
- Definição de métodos
- Discussão: Enviando mensagens aos objetos
- Classes
- Desafio: Classes abertas
- self
- Desafio: self e o método puts
- Atributos e propriedades: acessores e modificadores
- Syntax Sugar: facilitando a sintaxe
- Métodos de Classe
- Para saber mais: Singleton Classes
- Metaprogramação
- Convenções
- Mais OO
- Modulos
Um pouco de API
- Coleções
- Exemplo: múltiplos parâmetros
- Hashes
- Blocos e Programação Funcional
- Para saber mais: Mais sobre blocos
- Desafio: Usando blocos
- Manipulando erros e exceptions
- Exercício: Manipulando exceptions
- Arquivos com código fonte ruby
- Para saber mais: um pouco de IO
Ruby on Rails
- Ruby On Rails
- Aprender Ruby?
- IDE
- Criando um novo projeto rails
- Exercícios: Iniciando o Projeto
- Estrutura dos diretórios
- O Banco de Dados
- Exercícios: Criando o banco de dados
- A base da construção: scaffold (andaime)
- Exercícios: Scaffold
- Gerar as tabelas
- Versão do Banco de Dados
- Exercícios: Migrar tabela
- Server
- Exercícios: Iniciando o servidor
- Documentação do Rails
- Exercício Opcional: Utilizando a documentação
Active Record
- Motivação
- Exercícios: Controle de Restaurantes
- Modelo - O "M" do MVC
- ActiveRecord
- Rake
- Criando Modelos
- Migrations
- Exercícios: Criando os modelos
- Manipulando nossos modelos pelo console
- Exercícios: Manipulando registros
- Exercícios Opcionais
- Finders
- Exercícios: Buscas dinâmicas
- Validações
- Exercícios: Validações
- Exercícios - Completando nosso modelo
- O Modelo Qualificação
- Exercícios - Criando o Modelo de Qualificação
- Relacionamentos
- Para Saber Mais: Auto-relacionamento
- Para Saber Mais: Cache
- Exercícios - Relacionamentos
- Para Saber Mais - Eager Loading
- Para Saber Mais - Named Scopes
- Para Saber Mais - Modules
Controllers e Views
- O "V" e o "C" do MVC
- Hello World
- Exercícios: Criando o controlador
- Redirecionamento de Action e Action padrão
- Trabalhando com a View: O ERB
- Entendendo melhor o CRUD
- Exercícios: Controlador do Restaurante
- Helper
- Exercícios: Utilizando helpers para criar as views
- Partial
- Exercícios: Customizando o cabeçalho
- Layout
- Exercícios: Criando o header
- Outras formas de gerar a View
- Filtros
Rotas e Rack
- Rack
- Exercícios - Testando o Rack
- routes.rb
- Pretty URLs
- Named Routes
- REST - resources
- Actions extras em Resources
- Diversas Representações
- Para Saber Mais - Nested Resources
- Rails e o Rack
- Exercícios - Criando um rota para uma aplicação Rack
Completando o Sistema
- Um pouco mais sobre o Scaffold
- Exercícios
- Selecionando Clientes e Restaurante no form de Qualificações
- Exercícios
- Exercícios Opcionais
- Mais sobre os controllers
Calculations
- Métodos
- Média
- Exercícios
Associações Polimórficas
- Nosso problema
- Alterando o banco de dados
- Exercícios
Ajax com Rails
- Adicionando comentários nas views
- Instalando o JQuery no projeto
- Criando as chamadas AJAX
- Exercícios
- Adicionando comentários
- Exercícios
Alguns Plugins e Gems Importantes
- Paginação
- Exercícios - Título
- Hpricot
- Exercícios - Testando o Hpricot
- File Uploads: Paperclip
- Exercícios
Apêndice A - Testes
- O Porquê dos testes?
- %%Test::Unit%%
- RSpec
- Cucumber, o novo Story Runner
Apêndice B - Integrando Java e Ruby
- O Projeto
- Testando o JRuby
- Exercícios
- Testando o JRuby com Swing
Apêndice C - Deployment
- Webrick
- CGI
- FCGI - FastCGI
- Lighttpd e Litespeed
- Mongrel
- Proxies Reversos
- Phusion Passenger (mod_rails)
- Ruby Enterprise Edition
- Exercícios: Deploy com Apache e Passenger
Apêndice D - Instalação
- Ruby - Ubuntu
- Ruby - Windows
- Rails
- JDK
- Aptana
- Mongrel
- MySQL
- SVN

