RR-75 | Ruby e Rails avançados: lidando com problemas do dia a dia
[ 20 horas aula ]
Já desenvolve em Ruby e Rails, mas ainda não sabe bem como fazer testes? Durante esse curso, você aprenderá a utilizar as práticas mais difundidas no mercado para manter a qualidade do seu projeto alta. Passaremos por técnicas do eXtreme Programming (XP), Test Driven Development (TDD), Behavior Driven Development (BDD), Mocks, User Stories, Integração Contínua e testes de aceitação, usando as ferramentas mais consagradas do mercado como RSpec, Cucumber, Selenium, Webrat, Test::Unit e minitest.
Além disso, discutiremos desafios comumente enfrentados em aplicações Ruby e Rails de sucesso. Veremos como cuidar da performance e escalabilidade, as boas práticas e alternativas para deployment e como fazer integração com outras tecnologias: Web Services Restful e SOAP, RSS, Atom, JSON, envio de emails, processamento assíncrono e buscas textuais.
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-71.
Pré-requisitos: Curso RR-71 ou: conhecimentos avançados da linguagem Ruby e experiência com o framework Rails.
A opinião de quem fez o RR-75
O Curso da Caelum é excelente, instrutor muito bom, sempre disposto a ajudar. Conteúdo completo com várias dicas interessantes. Foi meu primeiro, mas com certeza irei voltar e fazer outros.
José Carlos Júnior - Natal-RN
| Data | Período | Cidade | Comentário |
|---|---|---|---|
| 25/09 a 09/10 | Sábado (9:00 as 17:00) | São Paulo | |
| 27/09 a 01/10 | Noturno (19:00 as 23:00) | São Paulo |
Conteúdo detalhado do RR-75
Introdução a Testes
- O que são testes automatizados
- Tipos de testes
Test Driven Development
- %%Test::Unit%%
- TDD: Test Driven Development
- Exercícios: TestCase
- Exercícios: Criando o projeto
Testes Avançados
- Cucumber, o novo Story Runner
- Cucumber e Capybara
- Exercícios: Cucumber
- Background
- Steps em Steps
- Para Saber Mais: Conjunction Steps - Antipattern
- Para Saber Mais: Gherkin
- Multline Step Arguments
- Para Saber Mais: Diffing Tables
- Running Features
- simplecov
- Exercícios Opcionais - Running Features e Simplecov
- Scenarios Outline
- Para Saber Mais: Tags
- Testes de aceitaçao e Selenium, Fitnesse, Watir
- Selenium
- Selenium On Rails
- Watir
- Fitnesse
- Webrat + Selenium
- Para Saber Mais: Faker
- Para Saber Mais: Culerity e Celerity
- Para saber mais: Integração contínua
- Paginação
- Exercício Opcional: Paginação
Introdução ao Behavior Driven Development
- Behavior Driven Development
- RSpec: descrevendo o comportamento
- RSpec: Examples
- Exercícios: RSpec
- Métodos Before e After
- Para Saber Mais: 'describe' como classe
- Exercícios: Examples - Before e After
- RSpec: Expectations
- Exercícios: Criando Matchers customizados
- RSpec: Mocks e Stubs
- Autotest
- Para Saber Mais - Outras ferramentas de testes famosas
Integrando Rails com outras tecnologias
- Busca textual
- Exercícios - Busca Textual com Solr
- Enviando Emails
- Exercícios: Enviando email
- Bases legadas e ActiveRecord avançado
- Exercícios: Bases legadas
- Model Tableless
- Formatos leves: RSS, Atom, JSON
- Exercícios: Lista de feeds
- Web Services Restful
- Exercícios - Web Service Restful
- Exercícios - Título
- Web Services SOAP com o SOAP4R
Behavior Driven Development e Rails
- Testes unitários no Ruby on Rails
- RSpec-Rails
- Testes Funcionais
- Specs para Controladores
- Exercícios: RSpec-Rails para Controller
- Fixtures
- Exercícios: Fixtures
- Conteúdo dinâmico em Fixtures
- Fixtures com Relacionamentos
- Fixture Replacements
- Exercícios: Fixtures Replacements
Criando gems e plugins
- O RubyGems
- Criando a própria Gem
- Geradores de gem
- Exercício opcional: Usando o Jeweler para criação de gem
- Rake
- Exercícios - Criando uma tarefa do Rake
- Plugins do Rails
- Exercicio - Criando um plugin
- Exercícios - Título
Bibliotecas Importantes
- Internacionalização
- Exercícios: Internacionalização
- Authlogic
- Exercícios
- JQuery on Rails
- Exercícios: Ajax com jRails
- HAML e SASS
- Exercícios - HAML e SASS
- Monitoramento: Log Analyzer
- Rails 3.0
- Para Saber Mais - AJAX não intrusivo
- Para Saber Mais - RDoc
Performance e Escalabilidade
- Caches
- Diminuindo HTTP Requests
- Para Saber Mais - Diminuindo as requisições HTTP
- Para Saber Mais - CDN - Content Delivery Network
- Page Cache
- Exercícios - Configurações de Cache
- Exercícios: Page Caching
- Expires Cache
- Exercícios: Expirando o cache
- Para saber mais: Quando usar?
- Cache Sweeper
- Exercícios - Cache Sweeper
- Exercício Opcional: Cacheando a paginação
- Action Cache
- Fragment Cache
- Memcached
- Threads
- Exercícios - Agendando Tarefas
- Ruby 1.9
Apêndice A - GIT
- Controladores de Versão
- Git
- Instalação
- Repositórios
- Comandos básicos
Apêndice B - Sinatra
- Sinatra
- Exercícios - Sinatra
- Exercícios- Sinatra e RSpec

