SlideShare uma empresa Scribd logo
CURSOS
Ruby on Rails
Prof: Igor Portela
Desenvolvedor:	
  Fazer	
  afirmações	
  com	
  
desconhecimento	
  de	
  causa	
  é	
  um	
  
atestado	
  de	
  ignorância.	
  
Reflexão	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Framework	
  Linguagem	
  
Ruby	
  !=	
  Rails	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Criador:	
  Yukihiro	
  Matsumoto	
  ou	
  “Matz”	
  
Ano:	
  1995	
  
CaracterísXcas:	
  	
  
	
  	
  	
  	
  	
  Dinâmica	
  e	
  interpretada	
  
	
  	
  	
  	
  	
  Forte	
  POO	
  -­‐	
  Tudo	
  é	
  objeto	
  
	
  	
  	
  	
  	
  Todas	
  as	
  classes	
  herda	
  de	
  Object	
  
	
  	
  	
  	
  	
  Operação	
  é	
  método:	
  eql,	
  exists,	
  extend	
  
A	
  Linguagem	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
 	
  	
  	
  	
  Métodos	
  retornam	
  valor	
  	
  
puts	
  “Hello	
  World”	
  =>	
  nil	
  
Tipos	
  básicos:	
  
	
  	
  	
  	
  	
  Numeric	
  
	
  	
  	
  	
  	
  Symbol	
  
	
  	
  	
  	
  	
  String	
  
	
  	
  	
  	
  	
  Array	
  
	
  	
  	
  	
  	
  Hash	
  
	
  
A	
  Linguagem	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Locais:	
  variavel	
  =	
  0	
  
	
  
Instâncias:	
  @variavel	
  =	
  “Igor”	
  
	
  
Classe:	
  @@classe	
  =	
  Classe	
  (saXc	
  do	
  Java)	
  
	
  
Globais:	
  $variavel	
  =	
  100	
  
Variáveis	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
JAVA	
  
public	
  double	
  soma(double	
  a,	
  double	
  b){	
  
	
  	
  return	
  a	
  +	
  b;	
  
}	
  
RUBY	
  
def	
  soma	
  a,b	
  
	
  	
  a+b	
  
end	
  
Comparação	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Criador:	
  Dave	
  Thomas	
  
Ano:	
  2004	
  
CaracterísXcas:	
  
	
  	
  	
  	
  	
  DRY	
  (Don’t	
  Repeat	
  Yourself	
  
	
  	
  	
  	
  	
  Scaffold	
  (CRUD)	
  
Framework	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
 	
  	
  	
  	
  AcXveSupport	
  
	
  	
  	
  	
  	
  AcXveRecord	
  
	
  	
  	
  	
  	
  AcXonPack	
  
	
  	
  	
  	
  	
  AcXonMailer	
  
	
  	
  	
  	
  	
  AcXveResource	
  
Framework	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Arquitetura	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
 
	
  
É	
   um	
   framework	
   que	
   contém	
   um	
   conjunto	
   de	
  
diversas	
  classes	
  e	
  extensões	
  de	
  bibliotecas	
  úteis	
  
para	
  o	
  desenvolvimento	
  web	
  
AcXveSupport	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
 
	
  
Framework	
   que	
   contém	
   uma	
   camada	
   de	
  
mapeamento	
   objeto-­‐relacional,	
   entre	
   a	
  
aplicação	
  e	
  o	
  banco	
  de	
  dados	
  relacional.	
  
AcXveRecord	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
 
	
  
Framework	
  HTML,	
  XML,	
  Javascripts	
  e	
  controle	
  
de	
  regras	
  de	
  negócio.	
  
AcXonPack	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
 
	
  
Framework	
  de	
  recebimento	
  de	
  emails.	
  Realiza	
  
diversas	
  operações	
  apenas	
  com	
  chamadas	
  de	
  
entrega	
  de	
  correspondência.	
  
AcXonMailer	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Framework	
  RESTful	
  (RepresentaXonal	
  State	
  Transfer)	
  “ful”	
  é	
  de	
  simplesmente	
  
REST.	
  Técnica	
  da	
  engenharia	
  de	
  soyware	
  para	
  sistemas	
  na	
  internet.	
  Principais	
  
POST,	
  GET,	
  PUT,	
  DELETE	
  
	
  
AcXveResource	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
 
WEBRick	
  ou	
  Mongrel	
  –	
  desenvolvimento	
  e	
  teste	
  
	
  
Sqlite3	
  
MySQL	
  
Oracle	
  
PostgreSQL	
  
Servidores	
  e	
  Banco	
  de	
  Dados	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
 	
  	
  	
  	
  About	
  
Informação	
  sobre	
  a	
  versão	
  e	
  componentes	
  
	
  	
  	
  	
  	
  Console	
  
Console	
  com	
  o	
  ambiente	
  da	
  aplicação	
  
	
  	
  	
  	
  	
  Dbconsole	
  
Console	
  padrão	
  do	
  banco	
  de	
  dados	
  
	
  	
  	
  	
  	
  Destroy	
  
Remove	
  o	
  código	
  gerado	
  
Scripts	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
 	
  	
  	
  	
  Generate	
  
Gera	
  o	
  código	
  de	
  uma	
  aplicação	
  
	
  	
  	
  	
  	
  Runner	
  
AutomaXzar	
  tarefas	
  da	
  aplicação	
  
	
  	
  	
  	
  	
  Server	
  
Inicia	
  o	
  servidor	
  de	
  aplicação	
  
Scripts	
  
 	
  	
  	
  	
  Controller	
  não	
  deve	
  resolver	
  tudo	
  sozinho.	
  
	
  	
  	
  	
  	
  Convenções	
  
	
  	
  	
  	
  	
  Modelos	
  gordos	
  
	
  	
  	
  	
  	
  Controllers	
  magros	
  
	
  	
  	
  	
  	
  Código	
  em	
  Inglês	
  
	
  	
  	
  	
  	
  Tabelas	
  são	
  classes	
  no	
  plural	
  
	
  	
  	
  	
  	
  Chave	
  primária	
  é	
  por	
  convenção	
  (table_id)	
  
Boas	
  PráXcas	
  
Criando	
  um	
  projeto	
  no	
  “terminal”	
  
	
  
	
  
Rails	
  new	
  projeto	
  –d	
  banco_de_dados	
  
	
  
	
  
O	
  Framework	
  agiliza	
  grande	
  parte	
  do	
  processo	
  para	
  você	
  
PráXca	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
App	
  –	
  abriga	
  os	
  controllers,	
  helpers,	
  views,	
  models,	
  
css,	
  js,	
  images	
  
Config	
  –	
  configurações	
  da	
  aplicação,	
  banco,	
  
ambientes	
  do	
  projeto	
  
DB	
  –	
  guarda	
  as	
  migrações,	
  	
  esquemas	
  e	
  arquivos	
  do	
  
banco	
  
Doc	
  –	
  documentação	
  
Lib	
  –	
  arquivos	
  de	
  biblioteca	
  
Log	
  –	
  os	
  logs	
  dos	
  servidores	
  (desenvolvimento,	
  
producao,	
  teste)	
  
	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Projeto	
  
Script	
  –	
  scripts	
  do	
  rails	
  (rails	
  generate,	
  rails	
  s)	
  
Test	
  –	
  arquivos	
  de	
  testes	
  funcionais,	
  unitários,	
  
integração.	
  
Tmp	
  –	
  arquivos	
  temporários	
  (sessão,	
  cache,	
  
migrações,	
  esquemas	
  e	
  etc.)	
  
Gemfile	
  –	
  onde	
  é	
  requerida	
  as	
  gems	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Projeto	
  
*..1	
  -­‐	
  has_many	
  	
  (muitos	
  p/	
  um)	
  
	
  
1..*	
  -­‐	
  belongs_to	
  (um	
  p/	
  muitos)	
  
	
  
*..*	
  -­‐	
  has_and_belongs_to_many	
  (muitos	
  p/	
  muitos)	
  
	
  
1..1	
  –	
  has_one	
  (um	
  p/	
  um)	
  
	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Relacionamentos	
  
Executadas	
  em	
  sequência.	
  
Permite	
  portabilidade	
  e	
  manutenabilidade.	
  
Básico:	
  
	
  
add_column(:email)	
  
	
  
remove_column(:email)	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Migrações	
  
É	
  similar	
  ao	
  make	
  do	
  Unix	
  que	
  tem	
  diversas	
  	
  opções	
  para	
  
ajudar	
  o	
  desenvolvedor.	
  
rake	
  db:create	
  
Cria	
  o	
  banco	
  de	
  dados	
  
	
  
rake	
  db:migrate	
  
	
  migra	
  o	
  banco	
  de	
  dados	
  
	
  
rake	
  db:destroy	
  
Destrói	
  o	
  banco	
  de	
  dados	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Rake	
  
São	
  bibliotecas	
  que	
  auxiliam	
  e	
  agilizam	
  o	
  desenvolvimento	
  do	
  
seu	
  projeto.	
  
	
  
Configuradas	
  no	
  arquivo	
  Gemfile.	
  	
  
Permite	
  o	
  controle	
  de	
  versãoda	
  bilbioteca	
  que	
  deseja	
  usar.	
  
	
  
Experimente	
  a	
  gem	
  ‘	
  copyright_author	
  ’	
  –	
  Permite	
  registrar	
  o	
  
autor	
  ou	
  autores	
  em	
  todo	
  código.	
  	
  
	
  
URL:	
  github.com/igorportela/copyright_author	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Gem	
  
ValidaXons	
  
Form_helpers	
  
Presenters	
  
Módulos	
  
Polymorphic	
  
Metaprogramação	
  
NoSql	
  
Testes	
  com	
  BDD	
  (Behavior	
  Driven	
  Development)	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Dica	
  
Leia	
  antes	
  de	
  “colocar	
  a	
  mão	
  na	
  massa”	
  
	
  
Google	
  group	
  –	
  rails-­‐br	
  
	
  
api.rubyonrails.org	
  
	
  
Curso	
  de	
  Ruby	
  on	
  Rails.	
  Direitos	
  Autorais	
  2013	
  Wake	
  Up	
  Systems.	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  www.WakeUpSystems.com	
  
Recomendações	
  
www.WakeUpSystems.com	
  
(83)	
  8818.2046	
  |	
  (83)	
  8830.7759	
  

Mais conteúdo relacionado

Semelhante a Minicurso Ruby on Rails - Wake Up Systems

Rails - EXATEC2009
Rails - EXATEC2009Rails - EXATEC2009
Rails - EXATEC2009Caue Guerra
 
Palestra Ruby on Rails SETA 2008/01
Palestra Ruby on Rails SETA 2008/01Palestra Ruby on Rails SETA 2008/01
Palestra Ruby on Rails SETA 2008/01Douglas Roeder
 
Introducao ao desenvolvimento web com Rails
Introducao ao desenvolvimento web com RailsIntroducao ao desenvolvimento web com Rails
Introducao ao desenvolvimento web com RailsKaton Agência Digital
 
A linguagem Ruby e o framework Rails
A linguagem Ruby e o framework RailsA linguagem Ruby e o framework Rails
A linguagem Ruby e o framework Railss4nx
 
Esta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com RailsEsta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com Railsismaelstahelin
 
ruby on rails e o mercado
ruby on rails e o mercadoruby on rails e o mercado
ruby on rails e o mercadoelliando dias
 
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariaisRuby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariaisRodrigo Recio
 
Curso de Ruby on Rails
Curso de Ruby on RailsCurso de Ruby on Rails
Curso de Ruby on RailsCJR, UnB
 
Desenvolvimento web com Ruby on Rails (parte 1)
Desenvolvimento web com Ruby on Rails (parte 1)Desenvolvimento web com Ruby on Rails (parte 1)
Desenvolvimento web com Ruby on Rails (parte 1)Joao Lucas Santana
 
Desenvolvimento RIA com Java
Desenvolvimento RIA com JavaDesenvolvimento RIA com Java
Desenvolvimento RIA com Javaarmeniocardoso
 

Semelhante a Minicurso Ruby on Rails - Wake Up Systems (20)

Ruby on rails
Ruby on railsRuby on rails
Ruby on rails
 
Rails - EXATEC2009
Rails - EXATEC2009Rails - EXATEC2009
Rails - EXATEC2009
 
Conhecendo o Ruby on Rails
Conhecendo o Ruby on RailsConhecendo o Ruby on Rails
Conhecendo o Ruby on Rails
 
Sistemas Distribuídos: RMI, CORBA e SOA
Sistemas Distribuídos: RMI, CORBA e SOASistemas Distribuídos: RMI, CORBA e SOA
Sistemas Distribuídos: RMI, CORBA e SOA
 
Palestra Ruby on Rails SETA 2008/01
Palestra Ruby on Rails SETA 2008/01Palestra Ruby on Rails SETA 2008/01
Palestra Ruby on Rails SETA 2008/01
 
Introducao ao desenvolvimento web com Rails
Introducao ao desenvolvimento web com RailsIntroducao ao desenvolvimento web com Rails
Introducao ao desenvolvimento web com Rails
 
A linguagem Ruby e o framework Rails
A linguagem Ruby e o framework RailsA linguagem Ruby e o framework Rails
A linguagem Ruby e o framework Rails
 
Esta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com RailsEsta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com Rails
 
Introdução Ruby 1.8.7 + Rails 3
Introdução Ruby 1.8.7 + Rails 3Introdução Ruby 1.8.7 + Rails 3
Introdução Ruby 1.8.7 + Rails 3
 
Oficial
OficialOficial
Oficial
 
ruby on rails e o mercado
ruby on rails e o mercadoruby on rails e o mercado
ruby on rails e o mercado
 
Rails 03
Rails 03Rails 03
Rails 03
 
Rails na pratica
Rails na praticaRails na pratica
Rails na pratica
 
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariaisRuby on Rails: um estudo de viabilidade em ambientes empresariais
Ruby on Rails: um estudo de viabilidade em ambientes empresariais
 
Curso de Ruby on Rails
Curso de Ruby on RailsCurso de Ruby on Rails
Curso de Ruby on Rails
 
Desenvolvimento web com Ruby on Rails (parte 1)
Desenvolvimento web com Ruby on Rails (parte 1)Desenvolvimento web com Ruby on Rails (parte 1)
Desenvolvimento web com Ruby on Rails (parte 1)
 
Ruby & Rails
Ruby & RailsRuby & Rails
Ruby & Rails
 
Introdução ao java
Introdução ao javaIntrodução ao java
Introdução ao java
 
React nos Trilhos
React nos TrilhosReact nos Trilhos
React nos Trilhos
 
Desenvolvimento RIA com Java
Desenvolvimento RIA com JavaDesenvolvimento RIA com Java
Desenvolvimento RIA com Java
 

Minicurso Ruby on Rails - Wake Up Systems

  • 2. Desenvolvedor:  Fazer  afirmações  com   desconhecimento  de  causa  é  um   atestado  de  ignorância.   Reflexão   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 3. Framework  Linguagem   Ruby  !=  Rails   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 4. Criador:  Yukihiro  Matsumoto  ou  “Matz”   Ano:  1995   CaracterísXcas:              Dinâmica  e  interpretada            Forte  POO  -­‐  Tudo  é  objeto            Todas  as  classes  herda  de  Object            Operação  é  método:  eql,  exists,  extend   A  Linguagem   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 5.          Métodos  retornam  valor     puts  “Hello  World”  =>  nil   Tipos  básicos:            Numeric            Symbol            String            Array            Hash     A  Linguagem   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 6. Locais:  variavel  =  0     Instâncias:  @variavel  =  “Igor”     Classe:  @@classe  =  Classe  (saXc  do  Java)     Globais:  $variavel  =  100   Variáveis   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 7. JAVA   public  double  soma(double  a,  double  b){      return  a  +  b;   }   RUBY   def  soma  a,b      a+b   end   Comparação   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 8. Criador:  Dave  Thomas   Ano:  2004   CaracterísXcas:            DRY  (Don’t  Repeat  Yourself            Scaffold  (CRUD)   Framework   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 9.          AcXveSupport            AcXveRecord            AcXonPack            AcXonMailer            AcXveResource   Framework   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 10. Arquitetura   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 11.     É   um   framework   que   contém   um   conjunto   de   diversas  classes  e  extensões  de  bibliotecas  úteis   para  o  desenvolvimento  web   AcXveSupport   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 12.     Framework   que   contém   uma   camada   de   mapeamento   objeto-­‐relacional,   entre   a   aplicação  e  o  banco  de  dados  relacional.   AcXveRecord   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 13.     Framework  HTML,  XML,  Javascripts  e  controle   de  regras  de  negócio.   AcXonPack   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 14.     Framework  de  recebimento  de  emails.  Realiza   diversas  operações  apenas  com  chamadas  de   entrega  de  correspondência.   AcXonMailer   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 15. Framework  RESTful  (RepresentaXonal  State  Transfer)  “ful”  é  de  simplesmente   REST.  Técnica  da  engenharia  de  soyware  para  sistemas  na  internet.  Principais   POST,  GET,  PUT,  DELETE     AcXveResource   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 16.   WEBRick  ou  Mongrel  –  desenvolvimento  e  teste     Sqlite3   MySQL   Oracle   PostgreSQL   Servidores  e  Banco  de  Dados   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 17.          About   Informação  sobre  a  versão  e  componentes            Console   Console  com  o  ambiente  da  aplicação            Dbconsole   Console  padrão  do  banco  de  dados            Destroy   Remove  o  código  gerado   Scripts   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 18.          Generate   Gera  o  código  de  uma  aplicação            Runner   AutomaXzar  tarefas  da  aplicação            Server   Inicia  o  servidor  de  aplicação   Scripts  
  • 19.          Controller  não  deve  resolver  tudo  sozinho.            Convenções            Modelos  gordos            Controllers  magros            Código  em  Inglês            Tabelas  são  classes  no  plural            Chave  primária  é  por  convenção  (table_id)   Boas  PráXcas  
  • 20. Criando  um  projeto  no  “terminal”       Rails  new  projeto  –d  banco_de_dados       O  Framework  agiliza  grande  parte  do  processo  para  você   PráXca   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com  
  • 21. App  –  abriga  os  controllers,  helpers,  views,  models,   css,  js,  images   Config  –  configurações  da  aplicação,  banco,   ambientes  do  projeto   DB  –  guarda  as  migrações,    esquemas  e  arquivos  do   banco   Doc  –  documentação   Lib  –  arquivos  de  biblioteca   Log  –  os  logs  dos  servidores  (desenvolvimento,   producao,  teste)     Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com   Projeto  
  • 22. Script  –  scripts  do  rails  (rails  generate,  rails  s)   Test  –  arquivos  de  testes  funcionais,  unitários,   integração.   Tmp  –  arquivos  temporários  (sessão,  cache,   migrações,  esquemas  e  etc.)   Gemfile  –  onde  é  requerida  as  gems   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com   Projeto  
  • 23. *..1  -­‐  has_many    (muitos  p/  um)     1..*  -­‐  belongs_to  (um  p/  muitos)     *..*  -­‐  has_and_belongs_to_many  (muitos  p/  muitos)     1..1  –  has_one  (um  p/  um)     Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com   Relacionamentos  
  • 24. Executadas  em  sequência.   Permite  portabilidade  e  manutenabilidade.   Básico:     add_column(:email)     remove_column(:email)   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com   Migrações  
  • 25. É  similar  ao  make  do  Unix  que  tem  diversas    opções  para   ajudar  o  desenvolvedor.   rake  db:create   Cria  o  banco  de  dados     rake  db:migrate    migra  o  banco  de  dados     rake  db:destroy   Destrói  o  banco  de  dados   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com   Rake  
  • 26. São  bibliotecas  que  auxiliam  e  agilizam  o  desenvolvimento  do   seu  projeto.     Configuradas  no  arquivo  Gemfile.     Permite  o  controle  de  versãoda  bilbioteca  que  deseja  usar.     Experimente  a  gem  ‘  copyright_author  ’  –  Permite  registrar  o   autor  ou  autores  em  todo  código.       URL:  github.com/igorportela/copyright_author   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com   Gem  
  • 27. ValidaXons   Form_helpers   Presenters   Módulos   Polymorphic   Metaprogramação   NoSql   Testes  com  BDD  (Behavior  Driven  Development)   Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com   Dica  
  • 28. Leia  antes  de  “colocar  a  mão  na  massa”     Google  group  –  rails-­‐br     api.rubyonrails.org     Curso  de  Ruby  on  Rails.  Direitos  Autorais  2013  Wake  Up  Systems.                                                                                              www.WakeUpSystems.com   Recomendações  
  • 29. www.WakeUpSystems.com   (83)  8818.2046  |  (83)  8830.7759