Caelum | Ensino e Inovação - Cursos de Java, Scrum, Ruby on Rails


RR-71 | 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 é 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, 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.

Esse curso faz parte da Formação Ruby on Rails junto com o RR-75.

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, RR-71


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-71


Faça já sua reserva

Informações

Carga Horária: 32 horas aula

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.

Próximas Turmas

São Paulo

Início Término Período
13/03 03/04 Sabado (9:00 as 17:00)

Rio de Janeiro

Início Término Período
29/03 08/04 Noturno (18:00 as 22:00)
15/05 05/06 Sabado (9:00 as 17:00)

Brasília

Início Término Período
08/03 18/03 Noturno (19:00 as 23:00)

Conteúdo detalhado do RR-71

Agilidade na Web

  1. A agilidade
  2. A comunidade Rails
  3. Bibliografia
  4. Tirando dúvidas
  5. Para onde ir depois?

A linguagem Ruby

  1. A história do Ruby
  2. Características
  3. Instalação do interpretador
  4. Outras implementações
  5. MagLev
  6. Ruby Enterprise Edition
  7. Interactive Ruby
  8. Tipos Básicos
  9. Para Saber Mais - Desafios
  10. Para Saber Mais - Desafio

Ruby Avançado

  1. Mundo orientado a objetos
  2. Métodos comuns
  3. Meta-programação
  4. Definição de métodos
  5. Discussão: Enviando mensagens aos objetos
  6. Classes
  7. Desafio: Classes abertas
  8. self
  9. Desafio: self e o método puts
  10. Atributos e propriedades: acessores e modificadores
  11. Syntax Sugar
  12. Métodos de Classe
  13. Para saber mais: Singleton Classes
  14. Metaprogramação
  15. Convenções
  16. Coleções
  17. Blocos e Programação Funcional
  18. Desafio: Usando blocos
  19. Mais OO
  20. Modulos
  21. Manipulando erros e exceptions
  22. Exercício: Manipulando exceptions
  23. Arquivos Ruby

Ruby on Rails

  1. Ruby On Rails - Apresentação
  2. Aprender Ruby?
  3. RadRails
  4. Primeira Aplicação
  5. Exercícios: Iniciando o Projeto
  6. Estrutura dos diretórios
  7. O Banco de Dados
  8. Exercícios: Criando o banco de dados
  9. A base da construção: scaffold (andaime)
  10. Exercícios: Scaffold
  11. Gerar as tabelas
  12. Versão do Banco de Dados
  13. Exercícios: Migrar tabela
  14. Server
  15. Documentação do Rails
  16. Exercício Opcional: Utilizando a documentação

Active Record

  1. Motivação
  2. Exercícios: Controle de Restaurantes
  3. Modelo - O "M" do MVC
  4. ActiveRecord
  5. Rake
  6. Criando Modelos
  7. Migrations
  8. Exercícios: Criando os modelos
  9. Manipulando nossos modelos pelo console
  10. Exercícios: Manipulando registros
  11. Exercícios Opcionais
  12. Finders
  13. Exercícios: Buscas dinâmicas
  14. Validações
  15. Exercícios: Validações
  16. Exercícios - Completando nosso modelo
  17. O Modelo Qualificação
  18. Exercícios - Criando o Modelo de Qualificação
  19. Relacionamentos
  20. Para Saber Mais: Auto-relacionamento
  21. Para Saber Mais: Cache
  22. Exercícios - Relacionamentos
  23. Para Saber Mais - Eager Loading
  24. Para Saber Mais - Named Scopes
  25. Para Saber Mais - Modules

Controllers e Views

  1. O "V" e o "C" do MVC
  2. Hello World
  3. Exercícios: Criando o controlador
  4. Redirecionamento de Action e Action padrão
  5. Trabalhando com a View: O ERB
  6. Entendendo melhor o CRUD
  7. Exercícios: Controlador do Restaurante
  8. Helper
  9. Exercícios: Utilizando helpers para criar as views
  10. Partial
  11. Exercícios: Customizando o cabeçalho
  12. Layout
  13. Exercícios: Criando o header
  14. Outras formas de gerar a View
  15. Filtros

Rotas

  1. routes.rb
  2. Pretty URLs
  3. Named Routes
  4. REST - map.resource
  5. Actions extras em Resources
  6. Diversas Representações
  7. Para Saber Mais - Nested Resources

Completando o Sistema

  1. Exercícios
  2. Selecionando Clientes e Restaurante no form de Qualificações
  3. Exercícios
  4. Exercícios Opcionais

Calculations

  1. Métodos
  2. Média
  3. Exercícios

Associações Polimórficas

  1. Nosso problema
  2. Alterando o banco de dados
  3. Exercícios

Ajax fácil com RJS

  1. Adicionando comentários nas views
  2. Métodos de RJS Templates
  3. Exercícios
  4. Adicionando comentários
  5. Exercícios
  6. Exercícios - Enviando os dados com Ajax

Alguns Plugins e Gems Importantes

  1. Paginação
  2. Exercícios - Título
  3. Hpricot
  4. Exercícios - Testando o Hpricot
  5. File Uploads: Paperclip
  6. Exercícios

Apêndice A - Testes

  1. O Porquê dos testes?
  2. %%Test::Unit%%
  3. RSpec
  4. Cucumber, o novo Story Runner

Apêndice B - Integrando Java e Ruby

  1. O Projeto
  2. Testando o JRuby
  3. Exercícios
  4. Testando o JRuby com Swing

Apêndice C - Deployment

  1. Webrick
  2. CGI
  3. FCGI - FastCGI
  4. Lighttpd e Litespeed
  5. Mongrel
  6. Proxies Reversos
  7. Phusion Passenger (mod_rails)
  8. Ruby Enterprise Edition
  9. Exercícios: Deploy com Apache e Passenger

Apêndice D - Instalação

  1. Ruby - Ubuntu
  2. Ruby - Windows
  3. Rails
  4. JDK
  5. Aptana
  6. Mongrel
  7. MySQL
  8. SVN

Caelum | Ensino e Inovação
São Paulo: Rua Vergueiro, 3185, cj. 87, próximo ao Metrô Vila Mariana   |   Tel. (11) 5571-2751
Rio de Janeiro: Rua Senador Dantas, 80, cj. 307/308 - Centro   |   Tel. (21) 2220-4156 ou 2297-0033
Brasília: SCS Qd. 8 Bl. B-50, Sala 521 - Ed. Venâncio 2000   |   Tel. (61) 3039-4222
A Caelum roda no cloud