Upload
thomas-witt
View
1.322
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Eine Kurzeinführung in Ruby on Rails und den Infopark Rails Connector.
Citation preview
Berlin, den 15. Juni 2009
Dynamisch:
Ruby on Rails
Ruby on Rails
“
Quelle: http://www.rubyonrails.org/
Rails is a full-stack framework for developing database-backed web applications according to the Model-View-Control pattern.
Ruby on Rails{}Sprache
Framework
Yukihiro “matz” Matsumoto
Ruby ist …
Open Source• >10 Implementationen
Objektorientiert
Dynamisch und Flexibel
Eine Interpretersprache
Einfach zu erlernen
Die zehntbeliebteste Programmiersprache der Welt• www.tiobe.com
David Heinemeier Hansson
Rails ist …
Open Source
Ruby-basiert
Ein Framework für datenbankbasierte Web-Applikationen
Opinionated Software• Convention over
Configuration• DRY• Testing
Basierend auf MVC
MVCModel-View-Controller-Ansatz
ModelView
Controller
MVC-Pattern
ModelView
Controller
MVC-Pattern
ModelView
Controller
MVC-Pattern
Controller Model ViewBeginn aller HTTP-
Anfragen
Welches Layout wird ausgewählt?
Zugriff auf die Datenbank via Model
Datenbank-Zugriff
Tatsächliche „Objekte“(Flug, Flughafen, Hotel)
mit Business-Logik
Überprüfungen(Flight.valid?)
Nützliche Methoden(Flight.destination)
Callbacks(Flight.save)
HTML-Seiten
E-Mails
Stylesheets
JavaScript
MVC-Pattern
Opinionated?Convention over Configuration, DRY, Testing
Convention over Configuration
Festgelegte Struktur im Dateisystem• Source-Code• Libraries• Plugins• Dokumentation
Filenaming conventions• camelCase class names,
Underscore Filenames
Datenbanktabellen
Konfigurationsdateien
DRY - Don‘t Repeat Yourself
Wiederverwendbarer Code
Metaprogrammierung• Dynamische erstellte
Methoden
Testing
Tests gehören automatisch zum Code• Test Driven Development• Behaviour Driven
Development
Verschiedene Ebenen• Datenbank: Fixtures • Unit tests: Models• Functional: Controller • Integration: Workflow• Browser: Selenium
Rails und seine natürliche Umgebung
Mehrere Module• ActiveRecord, ActiveSupport,
ActiveResource, ActionPack, Rails
Typische Helferlein• rake• gem• capistrano• Phusion passenger• Rspec
Implementationen• MatzRuby (1.8), YARV (1.9),
JRuby, Rubinius, MacRuby
Infopark Rails Connector
Ermöglicht native Integration von Fiona-CMS-Content mit Rails
Rails ist das führende System
DynamischerLive-Server• Sofortige Publizierung• Basis für Personalisierung
Infopark Rails Connector
Rails Connector
CMS-Server
Infopark CMS Fiona
Datenbank
Repli-
kation
Rails Connector
Web-Server 1
Suche
Datenbank
Rails Connector
Web-Server 2
Suche
Datenbank
Load Balancer
Infopark AG
Kitzingstr. 15, D-12277 Berlin
Tel. +49 30 747993-0
Fax +49 30 747993-93
www.infopark.de
Thomas Witt
Ihre Fragen?
Vielen Dank für Ihre Aufmerksamkeit!
Twitter: @thomas_witt
Blog: www.thomas-witt.com