RR-11 - Desenvolvimento Ágil para Web 2.0 com Ruby on Rails
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 do curso é 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.
Esse foi o primeiro curso da Caelum que não focado em Java, porém com um capítulo especial sobre a integração do Ruby com Java, através do projeto JRuby. O curso é coordenado por Fabio Kung, que trabalha com Ruby desde 2005 e está ativamente envolvido na comunidade brasileira de Ruby on Rails, com alguns projetos como o Jetty Rails.
Ao final do curso, você estará apto a desenvolver uma aplicação completa com Ruby on Rails, gastando um tempo muito menor que com outras linguagens e frameworks. Tudo isso com recusos de AJAX, validação, de forma simples e sem XMLs!
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, RR-11
Informações
Carga Horária: 20 horas aula
Pré-requisitos: Lógica de programação e conhecimento de conceitos de orientação a objetos
Próximas Turmas
| Início | Término | Período |
|---|---|---|
| 24/11 | 28/11 | Noturno (19:00 as 23:00) |
| Início | Término | Período |
|---|---|---|
| 16/02 | 20/02 | Noturno (18:00 as 22:00) |
Conteúdo detalhado do RR-11
Caelum
- Sobre a empresa
- Sobre a apostila
A linguagem Ruby
- A história do Ruby
- Instalação do interpretador
- Outras implementações
- Interactive Ruby
- Tipos Básicos
- Mundo orientado a objetos
- Classes
- Syntax Sugar
- Métodos de Classe
- Metaprogramação
- Convenções
- Outros tipos
- Blocos e Programação Funcional
- Mais OO
- Modulos
- Arquivos Ruby
Conhecendo o RadRails
- Ruby On Rails - Apresentação
- Aprender Ruby?
- RadRails
- Explicando o RadRails
- Primeira Aplicação
- 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
- Documentação do Rails
Controle de restaurantes
- Motivação
- Exercícios
- Modelo - O "M" do MVC
- ActiveRecord
- Rake
- Criando Modelos
- Migrations
- Exercícios
- Manipulando nossos modelos pelo console
- Exercícios
- Exercícios Opcionais
- Finders
- Exercícios
- Validações
- Exercícios
- Exercícios - Completando nosso modelo
- Relacionamentos
- Exercícios - Relacionamentos
Test Driven Development
- O Porquê dos testes?
- %%Test::Unit%%
- Fixtures
- TDD - Test-Driven Development
- RSpec
- Mocks (Mocha)
- Specs para Controladores
- Testes de integração e Selenium, FIT, Watir
Controllers: A lógica de negócios
- O "C" do MVC
- Hello World
- Exercícios
- Redirecionamento de Action e Action padrão
- Entendendo melhor o CRUD
- Exercícios
- Filtros
O ERB
- O "V" do MVC
- Helper
- Exercícios
- Partial
- Exercícios
- Layout
- Exercícios
- Outras formas de gerar a View
Criando Rotas
- routes.rb
- Pretty URLs
- Named Routes
- REST - map.resource
- Actions extras em Resources
- Nested Resources
- Diversas Representações
Completando o Sistema
- Exercícios
- Selecionando Clientes e Restaurante no form de Qualificações
- Exercícios
- Exercícios Opcionais
Calculations
- Métodos
- Média
- Exercícios
Associações Polimórficas
- Nosso problema
- Alterando o banco de dados
- Exercícios
Ajax fácil com RJS
- Adicionando comentários nas views
- Métodos de RJS Templates
- Exercícios
- Adicionando comentários
- Exercícios
- Exercícios Opcionais - Enviando os dados com Ajax
Apêndice A - Caches
- Configurações necessárias
- Page Cache
- Action Cache
- Fragment Cache
- Cache Sweeper
Apêndice B - Alguns Plugins e Gems Importantes
- Paginação
- hpricot
Apêndice C - Integrando Java e Ruby
- O Projeto
- Testando o JRuby
- Exercícios
- Testando o JRuby com Swing
Apêndice D - Instalação
- Ruby - Ubuntu
- Ruby - Windows
- Rails
- JDK
- Aptana
- Mongrel
- MySQL
- SVN
