Upload
klaus-paiva
View
608
Download
0
Embed Size (px)
DESCRIPTION
Material de apoio do segundo dia do curso de verão no Senac. Uma introdução aos conceitos do Rails e apresentação da proposta do projeto a ser desenvolvido. A idéia é cumprir os objetivos propostos nas próximas três aulas.
Citation preview
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
Introdução ao Rails
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
O que é Rails?O que é Rails?
Framework para desenvolvimento web construído sobre a linguagem Ruby.
Permite o desenvolvimento ágil de aplicações por assumir que várias características e funcionalidades são comuns a maioria das aplicações web.
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
Princípio 1Princípio 1
DRY. Don't repeat yourself:Sugere que a repetição ou duplicação de código é um indicador de que algo não está bom.
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
Princípio 2Princípio 2
Convention over configuration:Define que ao invés de exigir a configuração de toda a aplicação, o Rails assume algumas premissas que, se seguidas, permitem uma grande redução dos arquivos de configuração.
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
Desenvolvimento web sem RailsDesenvolvimento web sem Rails
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
Desenvolvimento web com RailsDesenvolvimento web com Rails
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
Arquitetura MVCArquitetura MVC
O Rails é organizado em torno da arquitetura MVC:Model
View
Controller
Vantagens:Separação da lógica de negócio da interface do sistema.
Facilita a execução do princípio DRY.
Permite deduzir aonde determinados códigos devem estar, facilitando a manutenção.
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
M: ModelsM: Models
Representa os dados (informações) de sua aplicação.Representa também as regras para acesso e manipulação desses dados.
No caso geral, os Models possuem uma tabela correspondente no banco de dados do sistema.
Boa parte das regras de negócio da aplicação estarão presentes nos Models.
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
V: ViewsV: Views
Representam a interface da aplicação.
Na maioria dos casos são compostos por elementos HTML mais instruções ERB (embedded Ruby).
Responsáveis por gerenciar e montar as informações que serão repassadas ao navegador.
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
C: ControllersC: Controllers
Fazem o "meio de campo" entre os Models e as Views.
Quando uma requisição chega até o Rails, o Controller vai atender essa requisição, pedindo as informações necessárias para os Models e delegando a apresentação para as Views.
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
MVCMVC
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
Componentes do RailsComponentes do Rails
Action ControllerAction ViewActive RecordAction MailerActive ResourceRailtiesActive Support
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
Mão na massa!Mão na massa!
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
O que vamos fazer?O que vamos fazer?
Uma aplicação que exibe locais de interesse comum.Parques
Hotéis
Baladas
Restaurantes
Shoppings
etc...
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
Quais os objetivos?Quais os objetivos?
Interface administrativa.
Integração com Google Maps.
URLs amigáveis.
Espaço para comentários.
Avaliação dos locais cadastrados. (rating)
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
ReferênciasReferências
http://guides.rubyonrails.org/getting_started_with_rails.html
http://api.rubyonrails.org/
http://www.akitaonrails.com/
http://gettingreal.37signals.com/
26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br
Fotos: CréditosFotos: Créditos
Slide 3: http://tinyurl.com/7rglfaSlide 4: http://tinyurl.com/95xhmbSlide 5: http://tinyurl.com/8g4cdbSlide 5: http://tinyurl.com/9pupqdSlide 6: http://tinyurl.com/8xboxlSlide 11: http://tinyurl.com/4rscd4Slide 13: http://tinyurl.com/7zezngSlide 14: http://tinyurl.com/724kq5Slide 16: http://tinyurl.com/7kh8by