17
26~30/01/2009 @ senac Klaus Paiva www.klaus.pro.br Introdução ao Rails

Introducao ao Rails

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

Page 1: Introducao ao Rails

26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br

Introdução ao Rails

Page 2: Introducao 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.

Page 3: Introducao ao Rails

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.

Page 4: Introducao ao Rails

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.

Page 5: Introducao ao Rails

26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br

Desenvolvimento web sem RailsDesenvolvimento web sem Rails

Page 6: Introducao ao Rails

26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br

Desenvolvimento web com RailsDesenvolvimento web com Rails

Page 7: Introducao ao 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.

Page 8: Introducao ao Rails

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.

Page 9: Introducao ao Rails

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.

Page 10: Introducao ao Rails

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.

Page 11: Introducao ao Rails

26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br

MVCMVC

Page 12: Introducao ao Rails

26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br

Componentes do RailsComponentes do Rails

Action ControllerAction ViewActive RecordAction MailerActive ResourceRailtiesActive Support

Page 13: Introducao ao Rails

26~30/01/2009 @ senac Klaus Paivawww.klaus.pro.br

Mão na massa!Mão na massa!

Page 14: Introducao ao Rails

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

Page 15: Introducao ao Rails

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)

Page 16: Introducao ao Rails

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/

Page 17: Introducao ao Rails

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