Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Ruby on Rails im Überblick

Ähnliche Präsentationen


Präsentation zum Thema: "Ruby on Rails im Überblick"—  Präsentation transkript:

1 Ruby on Rails im Überblick

2 Was ist Ruby on Rails? RoR ist ein Framework zur einfacheren Entwicklung, Nutzung und Wartung von Web Applikationen Besteht seit 2005 und wurde vorrangig für sogenannte Web 2.0 Applikationen entwickelt Rails ist in der objektorientierten Skriptsprache Ruby geschrieben Rails beinhaltet Testunterstützung Rails Applikationen sind in der Model-View-Controller Architektur implementiert Ziel von Rails: keine Wiederholungen (Don‘t repeat yourself)

3 Models, Views, Controllers (MVC)
Architektur von Rails Applikationen Model: Die zugrunde liegende Datenstruktur- üblicherweise eine relationale Datenbank View: Das User Interface Sicht auf Daten des zugrunde liegenden Models Bietet die Schnittstelle zu User Interaktionen KEINE Verarbeitung der Daten Controller: Steuert die Applikation Schnittstelle zwischen Webbrowser, View und Model Interagiert mit dem Model Gibt die entsprechende View an den User aus

4 MVC Architektur

5 Hört sich gut an, ABER... ... Wie sieht das in der Entwicklungsumgebung aus?

6 Objektorientierung vs. Datenbanken
Vereinung von objektorientierter Programmierung und relationale Datenbanken schwierig Objekte  Daten und Operationen Datenbanken  Sets von Daten bzw. Werten 2 Lösungsansätze Datenbankzentriertes Programmieren (Datenbanklogik als der Applikationslogik – zB in PHP üblich) Bsp: select * from User where name is ‘supertopcheckerbunny‘; Object-Relational Mapping (Mapping zwischen Datenbank Tabellen und Klassen)

7 Object-Relational Mapping (ORM)
Tabellen auf Klassen (zB Tabelle User auf Klasse User) Tabellenzeilen auf Objekte einer Klasse (zB ein Usereintrag) Tabellenspalten auf Attribute des Objekts (zB Username) Klassenmethoden, um Operationen in der Tabelle durchzuführen (zB Hinzufügen eines Users) Instanzmethoden, um Operationen in einer Tabellenzeile durchzuführen (zB Ändern des Passworts eines Users)

8 ORM in Rails Rails benutzt Active Record als ORM Layer
Minimiert den Konfigurationsaufwand für Entwickler Übernimmt die Handhabung der darunter liegenden Datenbank Validiert Datenmodell und übernimmt die Fehlerhandhabung ... Bsp User.find_by_name ‘supertopcheckerbunny‘

9 Rails ist agil Individuals and interactions over processes and tools
Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan Das Ziel ist, schnell eine Version funktionierender Software zu haben und diese dann stetig anzupassen bis sie schließlich den Anforderungen/Wünschen entspricht

10 Klingt wieder gut, ABER ... ... Wie setzt man das um?
zB mit Scaffolding „Gerüst“, das ein schnelles Erstellen kompletter Komponenten ermöglicht, die funktionieren Inkl. Model , Views, Controller Eignet sich gut für ein erstes Prototyping Prototyp wird dann inkrementell erweitert

11 Scaffolding Beispiel Einfache Bücherverwaltung (Titel, Autor, Beschreibung) Hinzufügen Editieren Löschen Bücherliste anzeigen Buchdetails anzeigen In Datenbank verwaltet Unit und funktionale Tests In weniger als 5 Minuten?

12 Rails Vorteile Mehr an Menschen als an Maschinen orientiert – führt die sehr gute Lesbarkeit von Ruby fort Rails-basierte Web-Anwendungen nehmen den Entwicklern Routine-Arbeit ab Rails verspricht 10-mal schnellere Ergebnisse als vergleichbare Java-Frameworks Rails ist auf verschiedenen Webservern einsetzbar Rails unterstützt agile Entwicklung – schnelles Erstellen funktionierender Prototypen Einfache Wartbarkeit

13 Rails Nachteile Völlige Abhängigkeit vom Framework
Je spezieller die Webanwendung, desto weniger nutzbar sind die Entwicklungshilfen Applikations- und Datenbankentwicklung in Unternehmen meist getrennt  kann zu Problemen führen Hosting – Verbreitung noch nicht so hoch

14 Weiterführende Literatur
Thomas, Dave/ Hansson, David H. et al: Agile Web Development with Rails. Thomas, Dave et al: Programming Ruby 1.9. The Pragmatic Programmers‘ Guide.


Herunterladen ppt "Ruby on Rails im Überblick"

Ähnliche Präsentationen


Google-Anzeigen