O documento resume as principais características e conceitos da linguagem de programação Ruby e do framework web Ruby on Rails. Foi lançado em 1995 e projetado para tornar os programadores felizes, com sintaxe enxuta e tudo como objeto. Rails facilita o desenvolvimento web ágil com convenções sobre configuração, DRY e simplicidade.
5. Ruby
● Melhor amigo do desenvolvedor
● Legível e Humana
● Perl, Smalltalk, Ada e LISP
● Orientada a Objetos
● Extremamente Flexível
6. Características do Ruby
● A sintaxe é enxuta
● Tudo é objeto
● Geração de código em tempo real
● Fortemente Tipada
● Tipagem dinâmica
● Closures Reais
19. Controle de Acesso
class Test class Test
public def method1
def method1
end
end
def method2
protected end
def method2 def method3
end end
private
public :method1
def method3
end protected :method2
private :method2
end end
28. Rails: o que é ?
Framework baseado em Ruby que facilita o
desenvolvimento web, fazendo-o com agilidade e
produtividade
29.
30.
31.
32. “Eles servem mais de 23 milhões de visitantes por mês. A conversão resultou
em 20 mil linhas de Ruby ao invés de 120 mil linhas de Java, e mais importante,
Facilitou a dificuldade que tinham com manutenção. Eles também finalizaram a
escrita do programa com apenas 3 meses com 4 desenvolvedores. Uma vez
completo e otimizado o site deles é mais rapido do que antes.”
34. Rails - Filosofia
● Convention over Configuration
● DRY - Don't repeat yourself
● KISS – Keep it simple stupid
● Diversão
35. Convention over Configuration
● Grande parte do desenvolvimento segue
padrões de convenção.
● Ex.: Para o model venda, temos uma tabela no
banco de dados chamada vendas.
● Resume-se em menos código e menos
repetição.
36. Convention over Configuration
● Nomes de Arquivos
● Nomes de Tabelas no BD
● Mapeamentos
● Chaves do BD
● Nome das Classes
● Ambientes
37. Don't Repeat Yourself
● Todo código gerado deve ficar apenas em um
local, não deve haver repetição de código em
outras áreas da aplicação.
● Ex.: Active Record – Não é necessário colocar
os códigos de CRUD no modelo, nome das
colunas, etc.
42. MVC
● Model - Parte da aplicação que faz ligação com
o banco de dados.
● View – Interface com o usuário.
● Controller – Responsável por receber as
requisições feitas pela aplicação e executar as
ações necessárias para atender essas
requisições. É onde definimos a lógica do
funcionamento da aplicação.
43. REST
● Consiste em utilizar os métodos HTTP no lugar
do nome das ações para rotear a ação correta
dentro do Controller.
● Dependendo do método HTTP o Rails
encaminha automaticamente para a ação
correspondente dentro do Controller.
44. REST
● Solicitações com o método:
● GET são encaminhadas para as ações
“index” e “show”
● POST são encaminhadas para a ação
“create”
● PUT são encaminhadas para a ação
“update”
● DELETE são encaminhadas para a ação
“destroy”
45. Rotas
● Rails não trabalha com URLs bagunçadas e
sim Rotas.
● Facilitação na leitura por engines de busca
http://www.torrentleech.org/details.php?id=188684
46. Facilidades
● Logs
● Ajax
● Javascript
● Jquery
● Prototype e Scriptaculous
● HTML
● Testes Automatizados