Startseite

DOAG Schulungstag Teil 1: Grails – Der heilige Gral und was dahintersteckt

In dieser außergewöhnlichen Schulung, die im Rahmen der DOAG Konferenz in Nürnberg angeboten wird, wollen wir den Teilnehmern ermöglichen drei Rapid Application Development Frameworks an einem Tag kennenzulernen und dabei die Vor- und Nachteile am Praxisbeispiel selbst zu erleben. Vorab veröffentlichen wir in unserem Blog eine kurze Übersicht über die einzelnen Frameworks. Starten möchten wir dabei mit Grails, welches wir im Folgenden kurz vorstellen möchten.

Wie alles begann

Das Grails-Projekt wurde im Jahre 2005 gestartet. Mit dem Projekt Grails (Groovy on Rails) wurde ein innovatives Webentwicklungs-Framework umgesetzt, welches auf den Sprachkonstrukten von Groovy und Ruby on Rails beruht und die etablierten Java Frameworks Spring, Spring MVC, Hibernate und SiteMesh nutzt. Die Resultate einer Grailsanwendung sind auf Grund der Basistechnologien immer Java Bytecode. Folglich verhält sich eine Grailsanwendung grundsätzlich wie eine JEE-Anwendung.

Aktuell ist Grails in der Version 1.3 und dem Release 1.3.7 verfügbar.

Das Konzept im Hintergrund

Grails basiert auf verschiedenen Prinzipien und Konzepten, die es dem Entwickler ermöglichen Entwicklungszeit einzusparen und Code zu vereinfachen.

1. Convention over Configuration (Konventionen vor Konfiguration)
Dies ist ein wesentlicher Grundsatz von Grails. Denn mit Convention over Configuration wird der Konfigurationsaufwand deutlich reduziert, jedoch nicht vollständig ersetzt. Entwickler haben dennoch die Möglichkeit bei Bedarf die Standardkonfiguration manuell anzupassen.

2. Groovy objektrelationales Mapping (GORM)
Das „Groovy objektrelationale Mapping“ (GORM) verleiht Grails seine Einfachheit und seine Power. Es basiert auf der Hibernate Bibliothek und verknüpft die Objekte der Domainklassen mit den Tabellen einer relationalen Datenbank.

3. Scaffolding
Das Scaffolding ist für die Generierung von CRUD- Schnittstellen (Create, Read, Update, Delete) mit nur einem Mausklick verantwortlich. Dies kann dynamisch zur Laufzeit aber auch statisch durch manuelles Generieren der Controller und Views geschehen. Grundvoraussetzung hierfür sind bestehende Domain-Klassen, welche sowohl die Geschäftslogik als auch die Datenbank abbilden.

4. Vielfältige Auswahl an Plugins
Plugins sind Features, die Grails seine Flexibilität verleihen. Denn Grails ist genaugenommen eine Plugin-Laufzeitumgebung, die Standardplugins (wie z.B. GORM) aber auch viele zusätzliche und individuelle Plugins umfasst. Die einfache Integration der Plugins ist möglich, da Grails-Plugins selbst kleine Grailsanwendungen sind, die bei der Einbindung in andere Applikationen eine Zusammenführung aller relevanten Konfigurationen darstellen. Die Auswahl der verfügbaren Plugins ist groß. Zur Zeit umfasst die Grails Homepage 674 verschiedene Plugins.

Der Grundaufbau von Grails basiert auf dem MVC-Pattern (Model-View-Controller), das in Grails mittels Domainklassen, Controllerklassen und Groovy Server Pages (GSP) umgesetzt ist.

grailsblog

Abbildung 1: Grailslogik

M – Model
Die Domainklassen sind der Kern jeder Anwendung und bilden die Geschäftslogik sowie das Datenmodell ab. Die Zuordnung der Datenbankobjekte wird durch das bereits erwähnte GORM durchgeführt.

V – View
Das View-Pattern wird durch die Groovy Server Pages (GSP) abgebildet. Sie entsprechen den bekannten JSP-Seiten (Java Server Pages), nutzen jedoch als Scriptletsprache Groovy.

C – Controller
Die Controllerklassen entsprechen, wie der Name schon sagt, dem Controller-Pattern und sind der Einstiegspunkt und das Steuerelement der Anwendung, da ein Controller für die Beantwortung und Weiterleitung aller eingehenden Requests verantwortlich ist.

Alles in allem ist Grails ein Framework mit dem selbst unerfahrene Entwickler in kürzester Zeit erste Ergebnisse erzielen können. Vergleicht man den Entwicklungsaufwand mit Grails mit dem Vorhaben eine Webanwendung in Java zu implementieren, ist erkennbar, dass dem Entwickler enorm viel Zeit und Aufwand bei der Entwicklung von Webanwendungen abgenommen wird. All dies ist möglich, weil in Grails Konvention vor Konfiguration gestellt wird und durch Scaffolding das einfache aber wichtige CRUD-Grundgerüst aufgebaut werden kann. Folglich hat mit Grails eine neue Ära der Web-Anwendungsentwicklung begonnen, die auf Grund von Weiterentwicklungen jedoch noch ausbaufähig ist.

Nicole Hoock

Pimp my Apps - APEX Usability verbessern

Mit dem Vortrag „Pimp my Apps – APEX Usability verbessern mit jQuery und Skinning“ starten wir am Dienstag, 15. November 2011 um 14.00 Uhr im Raum “Istanbul” unsere Vortragsreihe auf der diesjährigen DOAG Konferenz.

Logo DOAG 2011 Konferenz + Ausstellung

Oracle Application Express – schnell aber oft nicht wirklich sexy

APEX ist in der Oracle Welt kein unbekannter und in vielen Unternehmen mittlerweile etabliert. Mit Oracle Application Express (APEX) lassen sich Webanwendungen in kürzester Zeit entwickeln. Neben einigen Standard-Themes gibt es aber von Haus aus wenig Möglichkeiten das Aussehen und die Usability von APEX Anwendungen zu verbessern.

Wir sind der Überzeugung, dass der Erfolg von Webanwendungen unmittelbar auch mit der Akzeptanz beim Endanwender zusammenhängt und legen seit jeher großen Wert auf eine entsprechende Usability und „sexy“ Oberflächen.

Pimp my Apps – neue Möglichkeiten mit APEX 4

APEX 4 bietet neue weitreichende Möglichkeiten das Aussehen von APEX Anwendungen zu individualisieren. Ein typisches Anwendungsgebiet ist die Umsetzung von Corporate Designs, insbesondere bei vielen APEX-Anwendungen in einem Unternehmen. Der Vortrag vermittelt Best-Practices im Umgang mit Themes bzw. im Skinning von Anwendungen. Dabei wird veranschaulicht, welche Konzepte mit APEX in der Praxis zur Auswahl stehen und wie sich wertvolle Zeit bei der Entwicklung sparen lässt.

Abgerundet wird der Vortrag durch spezielle Gimmicks, die sich durch den Einsatz von jQuery Bibliotheken in APEX erzielen lassen. Der Vortrag wird anhand von vielen Beispielen aus der Praxis aufzeigen, wie man mit wenig Aufwand eine überragende Usability in APEX Anwendungen erzeugen kann und gibt Tipps und Tricks für den Einsatz im eigenen Unternehmen.

Unsere Expertin: Nicole Hoock

Expertin vor Ort für diesen Vortag ist Nicole Hoock. Sie hat in Karlsruhe Wirtschaftsinformatik studiert und ist seitdem im Projektgeschäft für esentri tätig. Dabei hat sie unter anderem bei großen APEX Projekten wertvolle Erfahrungen in der Webanwendungsentwicklung sammeln können.

Robert Szilinski

DOAG Schulungstag 2011 - Rapid Application Development in der Projektpraxis

Direkt im Anschluss an die DOAG 2011 Konferenz + Ausstellung findet am 18. November 2011 der DOAG-Schulungstag statt. esentri bietet als DOAG-Kooperationspartner einen ganztägigen Workshop an.

In der Entwicklung unserer Enterprise Social Networks setzen wir ganz auf Rapid Application Development. Doch welche Technologie ist die richtige zur Umsetzung eines Projekts?

Wenn Sie diese Frage fundiert beantworten möchten, sind Sie am DOAG-Schulungstag bei uns genau richtig. Lernen Sie in unserem Training unter dem Motto „Drei auf einen Streich – APEX vs. ADF vs. Grails im Produktionsvergleich“ die Stärken und Schwächen der wesentlichen RAD- Frameworks kennen. Mit Nicole Hoock und Robert Szilinski führen Sie zwei zertifizierte Projektmanager durch diesen Schulungstag und teilen mit Ihnen die Erfahrungen aus umfangreichen Rapid Application Developement Projekten.

DOAG 2011 Konferenz + Ausstellung (Logo)

"Drei auf einen Streich – APEX vs. ADF vs. Grails im Produktionsvergleich“

In dieser außergewöhnlichen Schulung wird den Teilnehmern die einmalige Möglichkeit gegeben mehrere RAD (Rapid Application Development) Frameworks mit unterschiedlichen Konzepten an einem Tag zu erlernen und miteinander zu vergleichen. Ziel ist es den Teilnehmern die spezifischen Eigenschaften der einzelnen Technologien aufzuzeigen und wertvolle Erkenntnisse für die Auswahl sowie den praktischen Einsatz im eigenen Unternehmen zu vermitteln. Dabei wird nicht auf das letzte „Bit und Byte“ eingegangen, sondern vielmehr die Unterschiede und Praxistauglichkeit anhand beispielhafter Fragestellungen erpobt sowie Best-Practices für den Einstieg aus dem Projektalltag vermittelt. Die Teilnehmer haben am Ende des Tages eigene Erfahrungen über die Vor- und Nachteile gesammelt sowie die unterschiedlichen Konzepte, die es bei der Realisierung von Webanwendungen gibt, kennengelernt.

Die eintägige Schulung ist für Entwickler/Entscheider, DBAs und DB-Programmierer die einen schnellen Einblick in die Webentwicklung bekommen möchten geeignet.

Seminarinhalte

Basis für den Schulungstag ist ein konkretes Beispiel aus der Praxis, das mit allen drei Technologien aktiv von den Teilnehmern als Übung umgesetzt wird. Zuvor werden jeweils die technologischen Grundlagen didaktisch erläutert und Einsatzgebiete der Frameworks aufgezeigt. Im Einzelnen ist folgende Agenda vorgesehen:

Einführung Webanwendung Grundlagen

  • Architektur und Funktionsweise moderner Webanwendungen
  • Relevante Technologien bei der Umsetzung
  • Bewährte Konzepte zur Anbindung der Oracle Datenbank

Grails

  • Aufbau und Funktionsweise des Frameworks
  • Vorteile von Grails, Auswirkung auf die Entwicklung
  • Installation und Einrichtung, Tool Unterstützung, IDE
  • Beispiel Grails Anwendung, Scaffolding, Domänenmodell, Controller, Views

Oracle ADF

  • Einführung in JEE Standards
  • Aufbau und Architektur von ADF
  • Vorteile von ADF für die Entwicklung Oracle basierter Webanwendungen
  • Umgang mit dem JDeveloper
  • Beispiel ADF Anwendung, ADF Business Components, ADF Bindings, ADF Faces

APEX

  • Aufbau und Architektur von APEX Anwendungen
  • Unterschiede zu bisherigen Ansätzen
  • Vorteile von APEX für Oracle Entwickler
  • Beispielanwendung mit Oacle APEX, Items, Prozesse, Validierungen, Branches

Untermauert wird der Theorieteil mit Tipps und Tricks aus der Praxis. Am Ende der Schulung bekommen die Teilnehmer eine Schlussaufgabe, die sie mit dem Framework ihrer Wahl lösen.

Weitere Zusatzinformationen:

  • SQL- und Programmier-Grundkenntnisse werden vorausgesetzt, eine spezifische Erfahrung in einer der Technologien wird nicht benötigt.
  • Die Schulung wird basierende auf Folien und vielen Code-Beispiele gehalten - Handouts gibt es vom Referenten direkt vor Ort.
  • Bitte bringen Sie zur Schulung Ihren eigenen Laptop mit. Wir empfehlen dabei folgende Mindestausstattung: 4 GB RAM, 4 GB freier Festplattenspeicher, min. 1,5 GhZ (Multicore) Prozessor und WLAN oder Netzwerkanschluss - Optional: Vorabinstallation der Oracle Software Virtual Box

Robert Szilinski
Copyright © 2009 esentri corporate Blog