Ruby on Rails [ Ruby On Rails.ppt ] - [Ruby - [Ruby-Doc.org ...
Introducao ao Ruby On Rails
-
Upload
andre-ferraro -
Category
Technology
-
view
10.288 -
download
0
Transcript of Introducao ao Ruby On Rails
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
INTRODUO
O que Ruby on Rails?
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Ruby uma Linguagem de programao interpretada, com Tipagem;Dinmica e forte, orientada a objetos;
Possui vrias semelhanas com Perl, Python e SmallTalk;
Foi criada pelo japons Yukihiro Matsumoto (Matz);
Possui vastos repositrio de bibliotecas;
O Ruby Gems a ferramenta utilizada para instalao de bibliotecas.
Sintaxe enxuta, quase no havendo necessidade de colchetes e outros caracteres;
Todas as variveis so objetos, onde at os "tipos primitivos" (tais como inteiro, real, entre outros) so classes;
Disponvel para Linux, Mac e Windows.
O que Ruby on Rails?
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Ruby on Rails um framework composto por vrias bibliotecas, juntas, essas bibliotecas fornecem um arsenal completo para a construo de aplicaes web. Voc pode usar o Rails para construir qualquer tipo de aplicao web. O principal objetivo aumentar velocidade e facilidade no desenvolvimento de sites orientados a banco de dados (database-driven web sites), uma vez que possvel criar aplicaes com base em estruturas pr-definidas. Frequentemente referenciado como Rails ou RoR, o Ruby on Rails um projeto de cdigo aberto escrito na linguagem de programao Ruby. As aplicaes criadas utilizando o framework Rails so desenvolvidas com base no padro de projeto MVC (model-view-controller).
Ruby Gems
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
RubyGems o sistema de empacotamento para o Ruby. RubyGems est para o Ruby como o Apt est para o Debian/Ubuntu.Sendo um sistema de gerenciamento de pacotes, o RubyGems distribui de forma fcil e padronizada bibliotecas e programas em Ruby.
Para saber quais gems voc tem instalado, use o comando:gem list
DRY e Coding by convention
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Don't Repeat Yourself (no se repita), termo utilizado na engenharia de software quando buscamos a no repetio de aes de forma desnecessria. o conceito por trs da tcnica de definir nomes, propriedades e cdigos em somente um lugar e reaproveitar essas informaes em outros.
Coding by convention (codificar por conveno) um paradigma de desenvolvimento de software que busca diminuir o nmero de decises que um desenvolvedor precisa fazer, ganhando em simplicidade, porm sem perder em flexibilidade.
MVC no Rails
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
ControleModeloVisualizao
1
2
3
4
MVC no Rails
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
O MVC (model-view-controller) pode ser entendido como uma diviso de tarefas em um aplicativo. View a pgina HTML gerada, e o cdigo que responsvel por gerar os dados dinmicos para o HTML o Controller. E, por fim, o Model a camada de comunicao com os dados armazenados, sejam eles em um banco de dados ou arquivos XML.
O internauta deseja buscar uma informao e clica no boto de busca;
A informao enviada ao controller que a recebe e envia ao model;
O model trata e busca a informao no banco de dados;
O model retorna o dado ao controler que o processo e envia ao view;
A visualizao gera o HTML enviado ao navegador.
ControleModeloVisualizao
1
2
3
4
Estrutura de pastas
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
app/ nesta pasta est todo o seus arquivos MVC. nesta pasta que est seu sistema;
config/ arquivos de configurao do projeto e de acesso ao banco de dados escolhido;
db/ contm o esquema e as migraes que permitem manipular os objetos do banco de dados;
doc/ - aps utilizar o comando rake doc:app , ento ser gerada toda a documentao da sua aplicao;
lib/ - bibliotecas de terceiros ou cdigo que no pode ficar na estrutura MVC, por exemplo: gerador de PDF;
log/ - arquivos de log de erros. Engloba erros de desenvolvimento, teste, produo e servidor;
Estrutura de pastas
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
public/ diretrio onde ficam os arquivos estticos da aplicao, como pginas de erro (404.html), imagens, javascripts e estilos CSS;
script/ local onde ficam os utilitrios do framework. Aqui ficam os scripts utilizados para gerao de cdigo (generate) e de execuo do servidor web (server).
test/ armazena os testes funcionais, testes de integrao, correes e simulaes;
tmp/ - arquivos temporrios gerados durante a execuo da aplicao;
vendor/ - este diretrio armazena os plugins de terceiros.
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
POR QUE RUBY ON RAILS?
Por que Ruby On Rails?
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
multi-plataforma
Ruby orientado a objetos
Suporta real ao MVC
Grande repositrio de plugins
Curva de aprendizado curta
Desenvolvido para Web
Open source
Flexibilidade
Permite desenvolvimento rpido
Possui ORM integrado suportando facilmente qualquer banco de dados
Focado em resultados
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
PROJETOS
projetos open source utilizando Ruby on Rails
Aplicaes open source desenvolvidas com Rails
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Gerenciamento de Projetos e Gesto do Tempo Retrospectiva - http://retrospectiva.org
Redmine - http://www.redmine.org
Tracks - http://www.getontracks.org
Clocking IT - http://www.clockingit.com
RailsCollab - http://jamesu.github.com/railscollab/Gestores de Contedo (inclui Blog)
Radiant CMS - http://radiantcms.org
Rubricks - http://rubricks.org
Mephisto - http://www.mephistoblog.com/
Typo - http://blog.typosphere.org/
Aplicaes open source desenvolvidas com Rails
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
CRM e ERP Fat Free CRM - http://fatfreecrm.com/
XLSuite - http://xlsuite.org/Comrcio Eletrnico
Spree - http://spreecommerce.com/
EcomPages - http://www.ecompages.com/Redes Sociais
OpenMind - http://openmind.sourceforge.net
Insoshi - http://github.com/insoshi/insoshi
Community Engine - http://www.communityengine.org/
Veja mais em: http://www.opensourcerails.com/
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
SITES
sites construdos com
Ruby on Rails
Sites desenvolvidos com Rails
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Twitter - http://www.twitter.com
Shopify - http://www.shopify.com
Lighthouse - http://lighthouseapp.com
Odeo - http://www.odeo.com
Flagr - http://www.flagr.com
Git-Hub - http://www.github.com
Sites BRASILEIROS desenvolvidos com Rails
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Brasigo - http://brasigo.com.br
BlogBlogs - http://blogblogs.com.br
Ikwa - http://www.ikwa.com.br
O Curioso - http://www.ocurioso.com
RubyOnda.com - http://rubyonda.com
orangotag.com - http://orangotag.com
diHITT - http://www.dihitt.com.br
GoZub - http://gozub.com
MooURL - http://moourl.com
Listas de discusso, fruns e outros
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Lista - rails-br http://groups.google.com/group/rails-br
Frum RubyOnBr - http://forum.rubyonbr.org
Frum Ruby Forum - http://www.ruby-forum.com/
Frum - Rails Forum - http://railsforum.com/
Lista Ruby on Rails: Talk - http://groups.google.com.br/group/rubyonrails-talk
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
PREPARANDO O
AMBIENTE DE DESENVOLVIMENTO
Instalando o Ruby on Rails no Ubuntu 8.04 LTS
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Instalando o Ruby
sudo aptitude install ruby build-essential libopenssl-ruby ruby1.8-dev Verificando a verso do Ruby que foi instalada
ruby -v Dever aparecer uma mensagem como esta:
ruby 1.8.7 (2008-08-11 patchlevel 72) [i486-linux] Testando as bibliotecas instaladas (dever aparecer Ola)
ruby -ropenssl -rzlib -rreadline -e "puts :Ola" Instalando Ruby Gems
sudo apt-get install rubygems Instalando o Railssudo gem install rails
Ambientes de desenvolvimento
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
RadRails Extenso do Aptana Studio;
Prov auto-completao de cdigo HTML, CSS e Javascript;
Fcil acesso a execuo de utilitrios;
Possui uma shell integrada no necessitando sair da ferramenta;
Permite o debug das aplicaes;
Navegao visual por mdulos e classes;
Necessita do Java (JRE) para funcionar.
gEdit Editor padro do Gnome;
Possui suporte a plugins;
Leve e robusto;
Necessita de plugins para facilitar o desenvolvimento de aplicaes Rails;
Possui shell (atravs de plugin);
Possui auto-completao (atravs de plugin);
No necessita do Java (JRE) instalado.
Instalando e utilizando o RadRails
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Faa download no site www.radrails.org
Descompacte o arquivo
Copie para sua pasta Home
Instale o Java Runtime Environment (JRE)
sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts Execute o arquivo AptanaRadRails dentro do diretrio Aptana RadRails em seu Home
Para comear um novo projeto clique no menu File -> New -> Rails Project
Configurando o gEdit
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Habilita os plugins do gEdit
$ sudo apt-get install gedit-plugins2. Instalando o git$ apt-get
install git-core3. Baixa e configura o gMate que uma srie
de plugins que melhoram o gEdit para Rails$ git clone
git://github.com/lexrupy/gmate.git4. Executa a instalao do gMate:$
cd gmate$ sh install.sh5. Execute o gEdit e entre em Editar >
Preferncias > Plug-ins e ative os componentes
Fontes
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Ruby (linguagem de programao) - http://pt.wikipedia.org/wiki/Ruby_(linguagem_de_programa%C3%A7%C3%A3o)
Ruby on Rails - http://pt.wikipedia.org/wiki/Ruby_on_Rails
Entendendo o RubyGems - http://akitaonrails.com/2009/2/2/entendendo-rubygems
Ruby Gems Manual - http://docs.rubygems.org/
Don't repeat yourself - http://en.wikipedia.org/wiki/Don%27t_repeat_yourself
Convention over configuration - http://en.wikipedia.org/wiki/Convention_over_configuration
MVC Model View Controller Architecture: New Wine in an Old Bottle - http://www.ils.unc.edu/~uskala/MVC.htm
MVC - http://pt.wikipedia.org/wiki/MVC
MVC (Model View Controller) - http://codeigniterbrasil.com/passos-iniciais/mvc-model-view-controller/
Entendo a estrutura de diretrios do Rails - http://www.fabiotomio.com.br/blog/2009/01/17/entendo-a-estrutura-de-diretorios-do-rails/
Why Rails? - http://blog.foraker.com/2009/06/why-rails/
Why not Rails? - http://jayant7k.blogspot.com/2007/10/why-not-rails.html
15 free open source Ruby on Rails application - http://www.dreamcss.com/2009/07/ruby-on-rails-applications.html
23 amazing and open source Ruby on Rails application - http://www.coolcreation.co.uk/website-design-blog/23-amazing-and-open-source-ruby-on-rails-applications/
Brazilian Rails Websites - http://www.akitaonrails.com/2008/7/27/brazilian-rails-websites
Ruby on Rails Directory Structure - http://www.tutorialspoint.com/ruby-on-rails/rails-directory-structure.htm
RubyOnRails on Ubuntu - https://help.ubuntu.com/community/RubyOnRails
Installing Ruby On Rails Debian/Ubuntu - http://wiki.rubyonrails.org/getting-started/installation/linux
Ambiente de Desenvolvimento Rails: Gedit + Gmate - http://infoblogs.com.br/view.action?contentId=183928&Ambiente-de-Desenvolvimento-Rails-Gedit-+-Gmate.html
Aptana RadRails - http://www.radrails.org/
Gedit - http://en.wikipedia.org/wiki/Gedit
How to install Java Runtime Environment (JRE) in Ubuntu - http://www.ubuntugeek.com/how-to-install-java-runtime-environment-jre-in-ubuntu.html
Comeando com Ruby on Rails 2 por Andr Ferraro - http://andreferraro.wordpress.com - http://twitter.com/andreferraro
Muokkaa otsikon tekstimuotoa napsauttamalla
Muokkaa jsennyksen tekstimuotoa napsauttamallaToinen jsennystasoKolmas jsennystasoNeljs jsennystasoViides jsennystasoKuudes jsennystasoSeitsems jsennystasoKahdeksas jsennystasoYhdekss jsennystaso