Lo sviluppo agile di
  applicazioni web
(su database Oracle)


Conferenza Annuale OUGIT
 Parma – 1 dicembre 2006

     Luc...
Ruby on Rails




Perchè? Come? Cosa?
Perchè?
Motivazione  Produttività
Troppa quot;Enterprisequot;
Liberare le Buone Idee
Come?
Predire il futuro è per gli oracoli




      Distillato da un servizio reale
È l'unico modo di creare un framework
    Oc...
Principi

        Less Is More

    Don't Repeat Yourself

Convention Over Configuration

  Constraints Are Liberating

   ...
Ruby !?!
  Tutto è un oggetto
Espressività dei blocchi
     Introspezione
 Estensione a runtime
    Librerie ricche
Cosa?
Un ambiente per la creazione di applicazioni
                     web


    Una soluzione completa per un problema
    Foc...
Integrato




       Dalle pagine al database
 un linguaggio solo per tutti i livelli
si prende cura dei piccoli particola...
Model View Controller
    (completo!)
Un insieme di
Domain Specific Language(s)
ActiveRecord
      ORM che implementa il pattern ActiveRecord

                    ActionPack
Controllo del flusso e gestio...
In Azione!
ActiveRecord
utente = User.new
 utente.name = “Scott Tiger”
         utente.save


 User.create( { :login=>’luca’,
        :name=>’Luca...
Database Migrations
ActionController
wget http://myhost/guestbook/index


POST su http://myhost/guestbook/sign con parametri
Views
Capistrano
Il risultato

quot;Most web frameworks force the developer to focus on the needs of the
 framework. You spend your time co...
… bello ma?
Issues (reali)

Bind variables in oracle

Integration o legacy databases

Deploy su windows / IIS

Accettazione in ambient...
Non-Issues

Scalabilità (shared nothing)

I18N (Globalize plugin, rails 1.2)

Integrazione con J2EE (Jruby!)

Curva di app...
Strategie di adozione

Progetti interni

Prototipazione

Nuove applicazioni
Domande?



l.mearelli@spazidigitali.com
  http://spazidigitali.com
Sul Web
http://gettingreal.37signals.com/
http://rubyonrails.com
http://peepcode.com
http://www.therubymine.com/
http://go...
THE END
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Introduzione a Ruby On Rails
Upcoming SlideShare
Loading in...5
×

Introduzione a Ruby On Rails

775

Published on

A small presentation i gave on 2006 introducing Ruby on Rails at the Oracle User's Group conference in Italy

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

  • Be the first to like this

No Downloads
Views
Total Views
775
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide





































































































  • Transcript of "Introduzione a Ruby On Rails"

    1. 1. Lo sviluppo agile di applicazioni web (su database Oracle) Conferenza Annuale OUGIT Parma – 1 dicembre 2006 Luca Mearelli
    2. 2. Ruby on Rails Perchè? Come? Cosa?
    3. 3. Perchè?
    4. 4. Motivazione  Produttività
    5. 5. Troppa quot;Enterprisequot;
    6. 6. Liberare le Buone Idee
    7. 7. Come?
    8. 8. Predire il futuro è per gli oracoli Distillato da un servizio reale È l'unico modo di creare un framework Occorre provare le API sul campo
    9. 9. Principi Less Is More Don't Repeat Yourself Convention Over Configuration Constraints Are Liberating Flexibility Is Overrated
    10. 10. Ruby !?! Tutto è un oggetto Espressività dei blocchi Introspezione Estensione a runtime Librerie ricche
    11. 11. Cosa?
    12. 12. Un ambiente per la creazione di applicazioni web Una soluzione completa per un problema Focalizzata sugli obiettivi non sui mezzi Non una singola grossa innovazione Infrastruttura NON Business Logic
    13. 13. Integrato Dalle pagine al database un linguaggio solo per tutti i livelli si prende cura dei piccoli particolari
    14. 14. Model View Controller (completo!)
    15. 15. Un insieme di Domain Specific Language(s)
    16. 16. ActiveRecord ORM che implementa il pattern ActiveRecord ActionPack Controllo del flusso e gestione delle viste (il VC nel MVC). ActionMailer Gestione delle email (invio, ricezione, test) ActionWebService Supporto per i Web service. ActiveSupport Utility di supporto del framework. Plugins
    17. 17. In Azione!
    18. 18. ActiveRecord
    19. 19. utente = User.new utente.name = “Scott Tiger” utente.save User.create( { :login=>’luca’, :name=>’Luca Mearelli’ }) lm = User.find_by_login(‘luca’) lm.name #‘Luca Mearelli’
    20. 20. Database Migrations
    21. 21. ActionController
    22. 22. wget http://myhost/guestbook/index POST su http://myhost/guestbook/sign con parametri
    23. 23. Views
    24. 24. Capistrano
    25. 25. Il risultato quot;Most web frameworks force the developer to focus on the needs of the framework. You spend your time configuring X, or interfacing between Y and Z. Rails isn't like that. With Rails you focus on delivering value to your users. Everything else just gets taken care of. Rails finally brings agility to the web.quot; Dave Thomas quot;Rails has become a standard to which even well-established tools are comparing themselves to.quot; Martin Fowler, Autore di Refactoring, PoEAA, XP Explained quot;Ruby on Rails is a breakthrough in lowering the barriers of entry to programming. Powerful web applications that formerly might have taken weeks or months to develop can be produced in a matter of days.quot; Tim O'Reilly, Fondatore di O'Reilly Media quot;Rails is the most well thought-out web development framework I've ever used. And that's in a decade of doing web applications for a living. I've built my own frameworks, helped develop the Servlet API, and have created more than a few web servers from scratch. Nobody has done it like this before.“
    26. 26. … bello ma?
    27. 27. Issues (reali) Bind variables in oracle Integration o legacy databases Deploy su windows / IIS Accettazione in ambienti enterprise
    28. 28. Non-Issues Scalabilità (shared nothing) I18N (Globalize plugin, rails 1.2) Integrazione con J2EE (Jruby!) Curva di apprendimento (e Java ?!)
    29. 29. Strategie di adozione Progetti interni Prototipazione Nuove applicazioni
    30. 30. Domande? l.mearelli@spazidigitali.com http://spazidigitali.com
    31. 31. Sul Web http://gettingreal.37signals.com/ http://rubyonrails.com http://peepcode.com http://www.therubymine.com/ http://google.com Libri Agile Web Development with Rails Dave Thomas, David Heinmeir Hansson (The Pragmatic Programmers) Rails Recipes Chad Fowler (The Pragmatic Programmers) Ruby for Rails David A. Black (Manning) RJS Templates for Rails Cody Fauser (O'Reilly)
    32. 32. THE END
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×