Warum ich doch Java gewählt habe

Unter Gründe für SAP / ABAP im Programmierprojekt habe ich geschrieben, welche Vorteile SAP / ABAP in unserem Programmierprojekt im Studium bietet. Grund für diesen Blog-Eintrag war, dass es letztes Jahr mehr Java als SAP Gruppen gegeben hat und ich etwas gegen wirken wollte.

Ich selbst habe mich für Java entschieden, da ich in Java wesentlich erfahrener bin und es zu den meisten Punkten aus dem ursprünglichen Blog-Eintrag auch einen Java-Vorteil gibt, wenn man die Punkte anders betrachtet. Diese Vorteile möchte ich hier erläutern:

Zu 1.

Mit ABAP haben wir deutlich mehr praktische Erfahrung als mit Java Server Pages, die wir nur kurz in der Vorlesung angesprochen haben und nur ein einfaches Beispiel gesehen habe. Die Einarbeitungszeit in ABAP ist dadurch wesentlich kürzer.

Während wir nur zwei Semester Vorlesungen zu ABAP hatten, haben wir drei Semester lang Java programmiert und dazu mehr Vorlesungen gehabt. Außerdem habe ich mit VPnotifier bereits ein richtiges Projekt mit Java Server Pages umgesetzt, während es bei der ABAP Webprogrammierung nur bei den Übungen in der Vorlesung geblieben ist.

Zu 2.

In SAP erhält man eine vollständig eingerichtete Entwicklungsumgebung. Dagegen muss man die Java-Tools erst konfigurieren, sich Gedanken machen, wie mit mehreren Benutzer gleichzeitig dasselbe Projekt bearbeitet werden kann und wie man Konflikte beim gleichzeitigen Bearbeiten einer Datei von zwei Personen vermeidet.

Das Arbeiten im Team lässt sich sehr leicht durch Versionskontrollsysteme wie Subversion koordinieren, wo ich nur ein neues Repository für das Java Projekt einrichten muss. Zwar fällt beim Einrichten der Entwicklungsumgebung mehr Aufwand an, dafür kann man aber lokal entwickeln, ohne eine Internetverbindung zum SAP Server herzustellen.

Zu 3.

Programmiert man mit Java, muss man zuerst eine Datenbank installieren, welche bei SAP schon vorhanden und eingerichtet ist.

Siehe 2.: Entwickeln ohne Internetverbindung

Zu 4.

Beim Abrufen der Datenbank wird in SAP Open SQL verwendet. SAP findet bei Open SQL Fehler schon während der Syntaxüberprüfung und vermeidet dadurch Laufzeitfehler.

O-R-Mapping durch Hibernate stellt eine Abstraktionsschicht zur Datenbank dar, wodurch Objekte ohne Verwendung von SQL persistent gespeichert werden. Dies ermöglicht eine schnellere Entwicklung, da für das Speichern der Java Objekte keine eigenen Funktionen programmiert werden müssen.

Zu 5.

Zum Veröffentlichen der Java Server Pages im Internet wird ein Servlet-Container wie z.B. Apache Tomcat benötigt. Dieser kann nicht auf einem einfachen Webspace installiert werden sondern benötigt einen eigenen Server, wodurch monatliche Kosten entstehen. Die preiswerteren Server sind mit Linux ausgestattet. Es ist in diesem Fall sinnvoll, gute Kenntnisse in diesem Betriebssystem zu haben. Bei SAP erhalten wir dagegen ein fertig konfiguriertes System.

Durch die Verwendung eines Open Source Servers kann die fertige Anwendung auf einem eigenen Server und unter eigener Domain betrieben werden. Bei SAP ist dies nicht so leicht durchführbar, da hierfür Rechte in SAP benötigt werden, über die nur die SAP Systemadministratoren, nicht aber wir Studenten als Entwickler, verfügen.

Zu 6.

Für die Datensicherungen im SAP sind nicht wir sondern der Betreiber verantwortlich. Bei Java ist dies jedoch Aufgabe der Studenten.

Woher weiß ich, dass auf dem SAP System Datensicherungen durchgeführt werden? Schließlich ist es kein System, mit dem eine Firma produktiv arbeitet. Dagegen kann ich mir sicher sein, dass ich über Backups verfüge, wenn ich automatisiert mein Subversion Repository an einen anderen Ort kopiere. Zudem ist auf jedem Rechner der Teammitglieder durch das lokale Entwickeln eine aktuelle Version verfügbar.

Zu 7.

Innerhalb des SAP-Systems gibt es Unmengen an Funktionsbausteinen, die in den Anwendungen verwendet werden können. Bei Java können über Libraries auch weitere Funktionen ergänzt werden. Diese Libaries müssen jedoch erst heruntergeladen und in das Projekt eingebunden werden, wohingegen die SAP Funktionen direkt verfügbar sind.

Möglicherweise gibt es in Java genauso viele oder noch mehr Funktionsbausteine. Entscheidend ist die Anzahl der Libraries, die der Entwickler kennt. Bei mir ist dies ein klares Kriterium für die Java-Welt.

Zu 8.

Laut Informationen in der Lernplattform Moodle gibt es für die SAP-Gruppen Unterstützung von zwei Dozenten, während die Java-Gruppen nur von einem Dozent betreut werden.

Java ist auf der Liste der beliebtesten Programmiersprachen auf den vorderen Plätzen, während ABAP nur einen geringen Anteil der Stimmen erhalten hat. Deshalb ist davon auszugehen, dass es im Internet wesentlich mehr hilfreiche Tutorials zu Java als zu ABAP gibt.

Zu 9.

In vielen Unternehmen befindet sich das ERP-System SAP im Einsatz. Deshalb sind die Kenntnisse aus der Umsetzung mit SAP hilfreicher als das Know-How, das man durch die Verwendung von Java erhält.

Ob mehr Java oder ABAP Entwickler gesucht werden, kann ich nicht sagen. Betrachtet man die Anzahl der Suchergebnisse von Google dazu, erhält man ebenfalls widersprüchliche Angaben (Stand 12.12.2010):

  • Java Developer: Ungefähr 37.600.000 Ergebnisse
  • ABAP Developer: Ungefähr 429.000 Ergebnisse
  • Java Entwickler: Ungefähr 375.000 Ergebnisse
  • ABAP Entwickler: Ungefähr 482.000 Ergebnisse

Zusammenfassend ist zu sagen, dass es zu jedem SAP-Vorteil bei anderer Betrachtungsweise auch einen Vorteil für Java gibt. Welche Sprache für ein Projekt besser geeignet ist, muss deshalb individuell, Abhängig von der Problemstellung und vom Know-How der Entwickler entschieden werden.

Tags: , , , , , ,

Eine Antwort zu “Warum ich doch Java gewählt habe”

  1. Sascha sagt:

    Es gibt immer pro und contra und mein System ist besser als deins und Linux sowieso besser als Windows und RTFM… Immer schöne Quellen für Flame wars.

    Viel wichtiger solltest du argumentieren, was du später machen willst. Wenn du SAP Consultant werden willst, ist ABAP sicherlich die bessere Wahl. Zumal jetzt, wo SAP in Probleme kommt, wenn sie sich von Java abhängig machen. Übrigens hat SAP sein ganzes Cloud-Produkt nach der Sun Übernahme durch Oracle auf ABAP umgestellt. Die Kosten waren es dann auch, die Apotheker wohl den Kopf… ähm… Vorstandsposten gekostet haben.

Hinterlasse eine Antwort

*