Allzu oft konzentrieren sich Entwickler auf Programmiersprachen und ignorieren die Frage der Produktivität. Als Beweis muss man nur einmal die endlosen Klagen in Bulletin Boards, Foren und in den Gängen bei Entwicklerkonferenzen anhören, bei denen die Vorteile von Sprache X im Vergleich zur Sprache Y ausdiskutiert werden. Aber eine Sprache an sich ist noch nicht alles. Die Entwicklungsgemeinschaft versuchte, Objekt-Datenbanken und schriftliche generische Frameworks einzubinden. Doch diese entsprechen entweder nicht genug dem Mainstream oder sie sind zu kompliziert. Warum sollte man einen weiteren Datenzugriffslayer beschreiben und dann „wähle * aus“ angeben?
Das relationale Modell eignet sich nicht so sehr zur einfachen Integration mit einem Front-End. Abgesehen von Problemen wie Sicherheit, Treiber, SQL-Injektion und gleichzeitigem Zugriff, muss die Benutzeroberfläche mit der Datenbank verknüpft werden, eine langweilige und anstrengende Aufgabe.
Ein Objekt-relationaler Mapper ist in Umgebung mit Datenbank-, Business- und Persitencelayer sehr effizient. Im Wesentlichen handelt es sich um einen Code-Generator, wenn auch einen sehr raffinierten. Auch wenn hierbei Zeit gespart wird, muss trotzdem Code neu erzeugt werden, wenn sich das Datenbankschema ändert, der gelegentlich auftretende Bug im erzeugten Code muss behoben werden und beim Kompilieren kommt es zu längeren Rechenzeiten und größeren Dateien.
Und noch wichtiger ist, dass Code-Generatoren darauf beschränkt sind, nur den Datenzugriffslayer und das Back-End des Businesslayers zu handhaben. Sie sind keine Frameworks, sondern Produktivitätswerkzeuge.
Ruby on Rails ist kein Code-Generator. Es ist ein echtes Framework, so dass alles, was am Anfang benötigt wird, direkt aus einer Packung kommt. Es wurde speziell für datenbankbetriebene Web-Anwendungen entwickelt und umfasst einen No-SQL-Persistence-Mechanismus (Activerecords), Model-View-Controller-Architektur (MVC) und integrierte Codevorlagen.
Ruby on Rails ist eine hoch entwickelte, sehr intelligente und gut durchdachte Softwareentwicklungsplattform zum Erstellen von Web-Anwendungen. Es basiert auf zwei bekannten Architekturmodellen: MVC und N-Tier-Design. Viele der bei der Web-Programmierung normalerweise üblichen Routinearbeiten entfallen – Schreiben von CRUD (Create, Read, Update, Delete)-SQL-Entwurfaussagen, Verknüpfen der Benutzeroberfläche, der Business- und Datenbanklayer und Einbinden der Geschäftslogik in konkrete Objekte.
Nach dem Einsatz von Ruby on Rails wird man eine andere Sicht von ASP.NET haben. Ein Ziel der neuesten Version 2.0 war die Reduzierung der Codemenge, die manuell geschrieben werden muss. Auch wenn dies erreicht wurde, lag doch erstaunlicherweise fast der gesamte Aufwand in Verbesserungen des Front-End, insbesondere beim Verbinden von Daten mit Oberflächenelementen und bei einigem sehr cleveren Formen und Modellieren. Aber ein Persistencelayer mit langer Laufzeit und unterdurchschnittlicher Leistung – Object Spaces – hat es nicht in das Release geschafft. Dementsprechend müssen die Entwickler immer noch benutzerdefinierten SQL-Code und Datenzugriffslayer schreiben, um Businessobjekte in der Datenbank zu speichern. So oder so war Object Spaces immer nur ein ORM-Paket, kein Framework.
Neueste Kommentare
Noch keine Kommentare zu Ruby on Rails – ein echtes Framework
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.