Ruby On Rails (Unisul)

  • View
    719

  • Download
    2

Embed Size (px)

DESCRIPTION

Palestra na Universidade do Sul de Santa Catarina sobre Ruby on Rails

Transcript

  • 1. RUBY ON RAILS Uma cultura de boas prticas
  • 2. O QUE ?
  • 3. O QUE UM FRAMEWORK ?Um framework prov uma soluo para uma famlia de problemas semelhantes. Um framework captura a funcionalidade comum a vriasaplicaes. As aplicaes devem ter algo razoavelmente grande em comum: pertencem a um mesmo domnio de problema.So projetados com para facilitar o desenvolvimento de software, habilitando designers e programadores a gastarem mais tempo determinando as exigncias do software do que com detalhes tediosos de baixo nvel do sistema.
  • 4. O QUE UM FRAMEWORK ?
  • 5. POR QUE USAR ??? * Padronizao de projetos * Disposio de recursos * Re-uso de cdigo * Flexibilidade e extensibilidade dos projetos * Fcil manuteno * Produtividade
  • 6. Yukihiro Matsumoto Matz
  • 7. Dylan Eiffel Ada Perl PythonSmalltalk Scheme Lisp
  • 8. Linguagem dinmica e reexivaLinguagem humanaSimplicidadeExtensibilidadeProdutividade
  • 9. PARA O PROGRAMADOR
  • 10. JAVApublic void imprime_impares(int limite){ for (int i = 1; i Ruby!Ruby!Ruby!Ruby!Ruby!Ruby!Ruby!Ruby!Ruby!Ruby!print "Ruby muito legal".split.reverse# => legalmuitoRuby
  • 15. Ocidente (2000)
  • 16. David Heinemeier Hansson
  • 17. BASECAMP
  • 18. Conveno sobre conguraoDRY (Dont Repeat Yourself)Cdigo bonito
  • 19. CONVENO SOBRE CONFIGURAONomes dos arquivosNomes das tabelas no banco de dadosChaves do DB controllersNomes das classes people_controller.rb countries_controller.rbMapeamentos data_banks_controller.rb modelsAmbientes person.rb country.rb data_bank.rb views people _form.html.erb edit.html.erb index.html.erb new.html.erb
  • 20. CONVENO SOBRE CONFIGURAONomes dos arquivosNomes das tabelas no banco de dadosChaves do DBNomes das classesMapeamentos TabelasAmbientes people countries data_banks
  • 21. CONVENO SOBRE CONFIGURAONomes dos arquivosNomes das tabelas no banco de dadosChaves do DB PeopleNomes das classes id country_idMapeamentos DataBanksAmbientes id person_id Countries id
  • 22. CONVENO SOBRE CONFIGURAONomes dos arquivosNomes das tabelas no banco de dadosChaves do DBNomes das classes class PersonMapeamentos endAmbientes class Country end class DataBank end
  • 23. CONVENO SOBRE CONFIGURAONomes dos arquivosNomes das tabelas no banco de dadosChaves do DBNomes das classesMapeamentosAmbientes
  • 24. CONVENO SOBRE CONFIGURAONomes dos arquivosNomes das tabelas no banco de dadosChaves do DBNomes das classesMapeamentos DevelopmentAmbientes Test Production
  • 25. DRY (DONT REPEAT YOURSELF) Gems Plugins
  • 26. CDIGO BONITO class Person < ActiveRecord::Base belongs_to :state has_one :user, :dependent => :destroy has_many :contacts, :dependent => :destroy has_many :data_banks, :dependent => :destroy has_many :alternate_addresses, :dependent => :destroy validates_length_of :name, :maximum => 120 validates_length_of :cep, :maximum => 9 validates_presence_of :type_person, :name, :city validates_associated :state validates_uniqueness_of :cpf default_scope :order => "created_at DESC" before_save { self.name = name.titleize } before_save { self.city = city.titleize } end
  • 27. E na prtica ???
  • 28. INSTALAO DO RUBY Windows: Cygwin a melhor opo. One-click installer. Linux: apt-get install ruby rdoc irb Mac OS: 10.5 j instalado. Macport
  • 29. LINKS DE RUBY Documentao http://apidock.com/ruby Tutoriais http://rubylearning.com/satishtalim/tutorial.html http://www.ruby-lang.org/pt http://www.ruby-doc.org/docs/ProgrammingRuby Fruns http://ruby-br.org http://www.rubyinside.com http://groups.google.com/group/rails-br Gens e plugins http://rubygems.org http://ruby-toolbox.com Projetos http://rubyforge.org
  • 30. LINKS DE RAILS Documentao http://api.rubyonrails.org http://apidock.com/rails Tutoriais http://guias.rubyonrails.pro.br http://akitaonrails.com/ http://rubyonrails.org http://edgerails.info http://ruby.railstutorial.org http://www.railsplugins.org Screencasts http://railscasts.com Projetos http://www.opensourcerails.com
  • 31. www.github.com/joelsondeabreu/blog
  • 32. EXPERIMENTE ...
  • 33. @joelsondeabreu PERGUNTAS ???http://www.slideshare.net/joelsondeabreu