Introdução ao Ruby on Rails

1,066 views

Published on

Mini-curso realizado na Semana Acadêmica da Unisinos (UNIINFO) em 2007

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,066
On SlideShare
0
From Embeds
0
Number of Embeds
33
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Introdução ao Ruby on Rails

  1. 1. Introdução ao Ruby on Rails UniInfo 2007 Jony dos Santos Kostetzer http://jonysk.net | jony@jonysk.net
  2. 2. Objetivos do mini-curso ● Conhecer a linguagem Ruby e suas principais características sintáticas ● Compreender a arquitetura MVC e sua aplicação no Rails ● Compreender os conceitos que norteiam o desenvolvimento de aplicações com Rails ● Desenvolver um cadastro de livros de forma incremental
  3. 3. A linguagem Ruby
  4. 4. História ● Criada em 1993 por Yukihiro “matz” Matsumoto ● Sucesso com o Rails ● No Japão, mais popular que a linguagem Python ● Inspirada em Perl, Smalltalk, Ada, Eiffel, Lisp ● Open Source ● Versão estável: 1.8.6 ● Quase 4.300 projetos hospedados no RubyForge
  5. 5. Características ● Sintaxe simples, eficiente... ● ... e divertida! ● Code less, do more! ● Foco na solução ● Tipagem dinâmica e forte ● Tudo é objeto ● Tudo tem um valor
  6. 6. Dave Thomas says... ● I believe that the purpose of life is, at least in part, to be happy. Based on this belief, Ruby is designed to make programming not only easy but also fun. ● You can concentrate on solving the problem at hand, instead of struggling with compiler and language issues. That’s how it can help you become a better programmer: by giving you the chance to spend your time creating solutions for your users, not for the compiler.
  7. 7. Características ● Classes abertas ● Herança simples, mas extensível com mixins ● Mensagens e não chamada de métodos ● Operadores mutáveis ● Variáveis são referências a objetos ● Uso massivo de blocos
  8. 8. Tipos de dados ● Numéricos – Fixnum , Bignum, Float ● Booleanos – true, false, nil ● Strings ● Ranges ● Arrays e Hashes ● Expressões regulares ● Proc ● Symbols
  9. 9. Classes e objetos class Classe def initialize(param1, param2) @inst1, @inst2 = param1, param2 end def metodo(param1, param2) end end a = Class.new a.metodo a.metodo(1, 2) a.metodo 1, 2 a.send “metodo”, 1, 2
  10. 10. O framework Rails
  11. 11. Rails ● Criado em meados de 2003 por David Heinemeier Hansson (DHH) ● Aplicação real que foi abstraída ● 37signals.com ● MVC ● Vantagem principal: Ruby!!
  12. 12. A filosofia por trás do Rails ● DRY – Don't Repeat Yourself ● Convention over Configuration ● Opinated software ● Agile Manifesto - http://www.agilemanifesto.org ● Resposta às mudanças
  13. 13. MVC - Model-View-Controller
  14. 14. MVC no Rails
  15. 15. Componentes ● ActiveRecord: Model no rails ● ORM ● ActionPack: Controller e View – View ● RHTML ● RXML ● RJS ● ActionMailer ● ActiveResouce e ActionWebService
  16. 16. Hands on! ● Aplicação: Cadastro de livros
  17. 17. Atualidades ● Versão 2.0 a caminho ● YARV ● Projeto JRuby – Rails & Java – Sun – Compilador finalizado
  18. 18. Links ● http://rubyonrails.com ● http://api.rubyonrails.com ● http://www.rubyonbr.org/ ● http://jruby.codehaus.org ● http://www.eustaquiorangel.com/ (tutorial ruby) ● http://kb.reflectivesurface.com/br/tutoriais/railsD iversaoLucro/ (tutorial rails) ● http://gettingreal.37signals.com/ ● http://akitaonrails.com
  19. 19. Obrigado! Jony dos Santos Kostetzer http://jonysk.net | jony@jonysk.net

×