smart developer Ein Code für alle (Vorschau)
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Schwerpunkt<br />
Enterprise Generation Language<br />
Durch die Vielzahl der eingebauten Schnittstellen<br />
ist es <strong>für</strong> den Entwickler relativ einfach,<br />
ohne tiefere Kenntnis der Legacy-Technologien<br />
Anwendungen in moderne Softwarearchitekturen<br />
zu integrieren.<br />
<strong>Ein</strong>stieg über Eclipse<br />
Neben vielen Schnittstellen, lässt sich auch<br />
die EGL-Entwicklungsumgebung selbst bei<br />
Bedarf als Plugin zu bestehenden Eclipsebasierten<br />
Entwicklungsumgebungen <strong>für</strong> System<br />
z und System i installieren. Entwickler<br />
können somit zwischen verschiedenen Sichten,<br />
zum Beispiel <strong>für</strong> Legacy-Programmierung<br />
in Cobol, RPG und anderen, Java-Programmierung<br />
und EGL-Programmierung, wechseln.<br />
Da sich EGL auch leicht von Entwicklern<br />
erlernen lässt, die sich nicht mit der technischen<br />
Komplexität einer Java-Anwendung belasten<br />
wollen, ist EGL nebenbei auch noch ein<br />
verbindendes Element zwischen Legacy-Programmierern<br />
und Java-Programmierern.<br />
Für die Ausführung von EGL-Programmen<br />
stehen verschiedene Generierungsoptionen<br />
zur Verfügung. Als Standard erzeugt die<br />
Enterprise Generation Language Java-<strong>Code</strong>,<br />
der auf beliebigen Plattformen ablauffähig<br />
ist. Optional lässt sich auch schneller Native<br />
<strong>Code</strong> <strong>für</strong> System z und System i erzeugen.<br />
Damit EGL sich gut im Markt etablieren<br />
kann, hat IBM vor einigen Monaten eine<br />
kostenlose Version von EGL verfügbar gemacht:<br />
die EGL Community Edition [1].<br />
EGL steht unter einer freien Lizenz. Anfang<br />
Juni letzten Jahres hat IBM zudem ein<br />
Eclipse-Projekt gestartet, quasi als Alternative<br />
zur Java-Programmierung [2]. Die EGL<br />
Development Tools stellen somit eine freie<br />
Entwicklungsumgebung <strong>für</strong> EGL inklusive<br />
Parser, Compiler und <strong>Code</strong>-Generatoren<br />
bereit. Auch die Sprache selbst – inklusive<br />
Syntax – ist Open Source.<br />
Mobile Web Edition<br />
Seit Januar dieses Jahres gibt es eine erste<br />
Erweiterungsbibliothek <strong>für</strong> das Entwickeln<br />
mobiler Applikationen [3]. Die Library liefert<br />
den Entwicklern Steuerungselemente, um<br />
Web Applikationen <strong>für</strong> Smartphones oder<br />
Tablets zu entwickeln, die das Erscheinungsbild<br />
einer nativen iOS oder Android-Applikation<br />
annehmen können. Sie unterstützt dabei<br />
folgende Widgets:<br />
• DojoMobileView<br />
• DojoMobileList<br />
• DojoMobileListCategory<br />
Was ist EGL?<br />
Speziell <strong>für</strong> die Plattformen System z und System<br />
i hat IBM mit der Enterprise Generation<br />
Language (EGL) ein Entwicklungswerkzeug geschaffen,<br />
über das sich die Administration von<br />
Legacy-Systemen vereinfachen lässt. Im<br />
Wesentlichen besteht EGL aus zwei Komponenten:<br />
Die erste Komponente ist eine serviceorientierte<br />
Programmiersprache mit einer Vielzahl<br />
von integrierten Schnittstellen zu Legacy-Anwendungen<br />
sowie zu Diensten, Benutzerschnittstellen<br />
und J2EE-Umgebungen. Die<br />
zweite Komponente besteht aus einer Eclipsebasierten<br />
Entwicklungsumgebung. Sie bringt<br />
Werkzeuge und Wizards zur Lösung von Integrationsaufgaben<br />
mit.<br />
<strong>Ein</strong>e EGL-Anwendung besteht aus vier Schichten:<br />
der Datenbankzugriffsschicht, der Business<br />
Logik, dem Controller und dem User Interface.<br />
Jede dieser Schichten bietet eine Reihe von<br />
Schnittstellen sowohl zu Legacy-Anwendungen,<br />
als auch zu modernen J2EE- oder Web-<br />
Anwendungen. So lassen sich über die Datenbankschicht<br />
gemischt sowohl relationale Datenbanken<br />
(DB2, Informix, Oracle, SQL-Server,<br />
MySQL) als auch ältere Datenhaltungssysteme<br />
(VSAM, IMS/DB, DB2/400, ADABAS) in einfacher<br />
Weise ansprechen. Auf Ebene der Business<br />
Logik und des Controllers lassen sich verschiedene<br />
Programmiersprachen (Java, Cobol,<br />
RPG, PL1, EGL, C, JCL, OCL, etc.), Transaktionsmonitore<br />
(CICS, IMS) und Services (Webservices,<br />
Restservices, RPC) einbinden. Als Benutzeroberfläche<br />
stehen RichClient (Web2.0 mit<br />
JavaScript), JSF, AJAX und Green Screen (5250<br />
und 3270) zur Verfügung, wobei <strong>für</strong> mobile und<br />
RUI-Anwendungen JavaScript zum <strong>Ein</strong>satz<br />
kommt. EGL eignet sich nicht nur <strong>für</strong> trockene<br />
Materien: Auch Spiele lassen sich realisieren.<br />
Abb. 1: Schematische Übersicht der Möglichkeiten<br />
der Enterprise Generation Language.<br />
<strong>smart</strong>-<strong>developer</strong>.de 02/2011 29