introducao ao rails

Post on 28-May-2015

610 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

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.

TRANSCRIPT

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

top related