Infrastrutture web e Ruby on Rails

1,831 views

Published on

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,831
On SlideShare
0
From Embeds
0
Number of Embeds
50
Actions
Shares
0
Downloads
19
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Infrastrutture web e Ruby on Rails

  1. 1. Infrastrutture per il web e Ruby on Rails Luigi Maselli http://grigio.org Corso autogestito di Linux 2007/2008 – Università di Torino
  2. 2. Web 2.0
  3. 3. Nessuno ha ben capito cosa significhi “Web 2.0”, ma dire che qualcosa lo é fa figo..
  4. 4. Cosa c'é di nuovo? <ul><li>Dal punto di vista dell'utente </li></ul><ul><li>Più interattività </li></ul><ul><li>Interfacce più semplici </li></ul><ul><li>Possibilità di condividere e ricomporre i propri contenuti </li></ul><ul><li>Dati sempre disponibili online </li></ul><ul><li>Siti web che possono sostituire applicazioni locali (client email, lettori di feed,..) </li></ul><ul><li>Dal punto di vista del programmatore </li></ul><ul><li>Standard web in continua evoluzione </li></ul><ul><li>Chiamate asincrone </li></ul><ul><li>WebApi </li></ul><ul><li>Framework </li></ul><ul><li>.. </li></ul>
  5. 5. ..cioé Firefox(gecko), IE, Safari(WebKit), Opera, applicazioni native interfacciate a WebAPI (es: Tweet = Clutter + Twitter) presentazione (html, xml, json, flash), interazione (javascript, ajax, flash) webserver , database Apache, Lighttpd, Php, Python, Ruby, Mysql, Oracle, SQLite,.. Client Server
  6. 6. ..e Ruby on Rails? Firefox(gecko), IE, Safari(WebKit), Opera, applicazioni native interfacciate a WebAPI (es: Clutter + Twitter) presentazione (html, xml, json, flash), interazione (javascript, ajax, flash) webserver , database Apache, Lighttpd, Php, Python, Ruby, Mysql, Oracle, SQLite,.. Client Server Ruby on Rails
  7. 7. Prima di andare oltre, Ruby! Completamente ad oggetti, conciso, espressivo, semplice, dinamico, multipiattaforma, multivirtualmachine, multiuso e Open Source. Altre caratteristiche interessanti: Duck Typing e Blocchi (Vedi Wikipedia ) Un unico linguaggio ad alto livello per: scripting , applicazioni desktop e web . È stato creato in Giappone da まつもとゆきひろ (Yukihiro Matsumoto - Matz) nel 1993 e dopo qualche anno si è diffuso nel resto del mondo.
  8. 8. Scripting
  9. 9. Applicazioni desktop
  10. 10. Applicazioni web (vedi Rails) Ruby on Rails è un Domain Specific Language (DSL), estende Ruby, applica dei Design Pattern come Model View Controller (MVC) e Convention over Configuration . Il framework Ruby on Rails ha avuto talmente tanto successo da aver ispirato framework analoghi in Php, Perl, .NET,.. Qualcuno lo ritiene un linguaggio indipendente, per la sua flessibilità e per le sue “magie”, ma tutto questo succede grazie a Ruby!
  11. 11. Ruby on Rails (MVC)
  12. 12. Model Gestisce le relazioni tra le tabelle del database Mappa una query su un oggetto (Object-relational mapping, ORM ) Valida la correttezza dei dati Non c'é bisogno di specificare il nome della tabella di riferimento(*) (*) Se si usano le convenzioni di Rails
  13. 13. Controller Carica i model per le view Gestisce le diverse tipologie di accesso Varie ed eventuali
  14. 14. View È l'equivalente della “pagina Php” Non può essere chiamata direttamente Può essere anche Xml, json, rss,.. Si occupa di presentare i dati, i form e gli errori
  15. 15. Risorse Applicazione TODO d'esempio http://grigio.org/files/todo.tar.gz Italiano http://ruby-it.org/ http://www.therubymine.com/ http://ruby.html.it http://grigio.org/un_assaggio_ruby_e_rails English http://api.rubyonrails.org/ http://www.ruby-lang.org http://rubyonrails.org http://railscasts.com/

×