dynamisch: ruby on rails

21
Berlin, den 15. Juni 2009 Dynamisch: Ruby on Rails

Upload: thomas-witt

Post on 13-May-2015

1.321 views

Category:

Technology


0 download

DESCRIPTION

Eine Kurzeinführung in Ruby on Rails und den Infopark Rails Connector.

TRANSCRIPT

Page 1: Dynamisch: Ruby on Rails

Berlin, den 15. Juni 2009

Dynamisch:

Ruby on Rails

Page 2: Dynamisch: Ruby on Rails

Ruby on Rails

Page 3: Dynamisch: 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.

Page 4: Dynamisch: Ruby on Rails

 

Ruby on Rails{}Sprache

Framework

Page 5: Dynamisch: Ruby on Rails

 

Yukihiro “matz” Matsumoto

Page 6: Dynamisch: Ruby on Rails

Ruby ist …

Open Source• >10 Implementationen

Objektorientiert

Dynamisch und Flexibel

Eine Interpretersprache

Einfach zu erlernen

Die zehntbeliebteste Programmiersprache der Welt• www.tiobe.com

Page 7: Dynamisch: Ruby on Rails

 

David Heinemeier Hansson

Page 8: Dynamisch: Ruby on Rails

Rails ist …

Open Source

Ruby-basiert

Ein Framework für datenbankbasierte Web-Applikationen

Opinionated Software• Convention over

Configuration• DRY• Testing

Basierend auf MVC

Page 9: Dynamisch: Ruby on Rails

MVCModel-View-Controller-Ansatz

Page 10: Dynamisch: Ruby on Rails

 

ModelView

Controller

MVC-Pattern

Page 11: Dynamisch: Ruby on Rails

 

ModelView

Controller

MVC-Pattern

Page 12: Dynamisch: Ruby on Rails

 

ModelView

Controller

MVC-Pattern

Page 13: Dynamisch: Ruby on Rails

 

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

Page 14: Dynamisch: Ruby on Rails

Opinionated?Convention over Configuration, DRY, Testing

Page 15: Dynamisch: Ruby on Rails

Convention over Configuration

Festgelegte Struktur im Dateisystem• Source-Code• Libraries• Plugins• Dokumentation

Filenaming conventions• camelCase class names,

Underscore Filenames

Datenbanktabellen

Konfigurationsdateien

Page 16: Dynamisch: Ruby on Rails

DRY - Don‘t Repeat Yourself

Wiederverwendbarer Code

Metaprogrammierung• Dynamische erstellte

Methoden

Page 17: Dynamisch: Ruby on Rails

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

Page 18: Dynamisch: Ruby on Rails

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

Page 19: Dynamisch: Ruby on Rails

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

Page 20: Dynamisch: Ruby on Rails

 

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

Page 21: Dynamisch: Ruby on Rails

Infopark AG

Kitzingstr. 15, D-12277 Berlin

Tel. +49 30 747993-0

Fax +49 30 747993-93

www.infopark.de

[email protected]

Thomas Witt

Ihre Fragen?

Vielen Dank für Ihre Aufmerksamkeit!

Twitter: @thomas_witt

Blog: www.thomas-witt.com