Mein erster Kontakt mit SAP

Vielleicht sollte dieser Post besser “Unheimliche Begegnung der dritten Art” heißen. Seit neun Jahren schreibe ich nun “lines of code”, auch wenn davon nur vier Jahre als professioneller Software Entwickler. Wenn ich eines besonders herausstellen müsste während meiner Arbeit in den verschiedensten Projekten, wäre es die Vielfalt der Programmiersprachen, Datenbanken, Frameworks, integrierten Entwicklungsumgebungen, Programmierumgebungen, Paradigmen, Entwurfsmuster, Methodologien etc., die ich verwendet habe. Das verwandelt mich in einen Experten von Nix, aber einen Wissenden von vielen Dingen ;). Jedenfalls hatte ich bis dahin so etwas wie SAP noch nie gesehen.

Zur Frage, was SAP ist:
Vor sechs Monate hätte ich geantwortet: SAP ist ein deutsches Unternehmen, von dem ich schon einmal gehört habe. Heute würde ich folgendermaßen antworten: SAP ist ein Monstrum! Es gibt SAP und dann den ganzen Rest, denn es ist eine komplette Welt für sich und sehr anders als alles andere.

Der große Unterschied liegt in der Programmierumgebung, in der Rolle des Servers und den Techniken, die genutzt werden, um SAP Technologien zu entwickeln.

  • Vergiss es an dem Projekt lokal zu arbeiten. Mit SAP arbeitest du immer direkt am Server.
  • Vergiss die Systeme der Versionsverwaltung wie CVS, Subversion, Mercurial oder Git. Sie kümmern sich nicht mehr um deinen Quellcode.
  • Softwareverteilung im Server? Du bist schon im Server! Willkommen in der Welt des Transports zwischen verschiedenen Systemen.
  • Sorgen wegen der Datenbankverbindung? Keine Sorge, du bist in der Datenbank, das ist Matrix.

SAPEine Sache, die am Anfang auffällt, ist das Erschaffen der Ressourcen in der Umgebung. In jeder anderen Programmierumgebung erstellt man normalerweise eine Textdatei in einem Dateisystem, die dann mit einer integrierten Entwicklungsumgebung bearbeitet wird. Mit SAP erstellt man etwas, das einen Teil eines großen Mechanismus formt. Außerdem existieren viele verschiedene Technologien innerhalb der SAP Welt, weswegen es am Anfang sehr verwirrend schien. Dadurch bedingt erscheint es einem in den ersten Tagen selbst bei den leichtesten Dingen zwischen tausenden von Möglichkeiten zu unterscheiden. Wizard und Konzepte, die man nicht versteht: Pakete, Transaktioncodes, Transportaufträge, Aktivierungen etc.

Das erstaunlichste von Allem ist der Server “the big brother”, auf dem sich alles befindet: unsere Umgebung, Werkzeuge, der Quellcode, die Daten etc.

Dieser Post versucht zu zeigen, wie ein Software Entwickler sich fühlt während seinen Anfängen in der Benutzung der SAP Technologien. Am Ende bekommt dann doch alles einen Sinn, vor Allem weil man bei gicom umgeben ist von vielen Fachwissenden, die  einem jeden Tag aufs neue Dinge beibringen.

Autor: Francisco Bosch

Der Einstieg in die Welt der Programmierung

Während Sie hinter Ihrem Rechner sitzen und quer durch das Internet surfen, sitze ich hier in Overath hinter meinem Laptop und lese mich in Codes ein. Solche Codes, wie die, die Sie durch Ihre Internetseiten in schön aufbereiteter Form präsentiert bekommen. Doch erst einmal, wie man überhaupt dazu kommt, sich für solche ungewöhnlichen/extravaganten Texte (Codes) zu interessieren.

Ich war ein ganz normales Mädchen, besuchte eine normale Realschule und interessierte mich für Mathe und Physik. Naja, vielleicht ist ein Mädchen mit diesen Lieblingsfächern doch nicht mehr so normal 🙂 Und …, wenn man es jetzt genauer betrachtet, … vielleicht ist die Schule auch nicht die normalste  – es ist eine Mädchenschule. Da die Realschule nun mal recht bald endet, stellte sich die Frage was danach kommt. Die Entscheidung fiel auf ein Wirtschaftsberufskolleg, um dort ein allgemein anerkanntes Abitur zu machen. Ob mich Wirtschaft interessiert oder nicht, wusste ich nicht, aber es ist gut, das schon in der Schule heraus zu finden, damit man sich für das Berufsleben dafür oder dagegen entscheiden kann. Mich interessierte es, aber mehr interessierten mich weiterhin Mathematik, Physik und das nun neu dazu gekommene Fach Informatik. Ich bekam kleine Einblicke in die schon erwähnten ungewöhnlichen/extravaganten Texte (Codes). Aufgrund der Größe der Klasse war das Beigebrachte nur ein kurzer Einblick. Ich wollte mehr! Da ich möchte, dass das Fach Wirtschaft mich auch weiterhin begleitet, suchte ich nach einem Studium in Wirtschaftsinformatik, was bei gicom im Rahmen eines dualen Studiums gefördert wird. Den Studienteil absolviere ich an der privaten Fachhochschule der Wirtschaft (FHDW) in Bergisch Gladbach.

20130516_150635

Nun bin ich seit einem dreiviertel Jahr bei gicom. Seit Beginn darf ich in die Programmierung eintauchen. Ich darf mit in Projekten arbeiten und erhalte somit schon früh Verantwortung. Als Schüler ist es etwas Neues, selbst für etwas verantwortlich zu sein, sich zu informieren und dann das gefundene anzuwenden, um das Projekt zielgerichtet voran zu bringen. Das erste halbe Jahr beschäftigte ich mich mit Visual Basic for Applications (VBA), der Programmiersprache von Microsoft. Dies ist nicht die Hauptsprache des Unternehmens, aber eine gute Sprache, um tiefer in die Welt der Programmierung einzusteigen. Nicht von allem, was ich im Internet herausfand und anwendete, verstand ich die Hintergründe, aber dafür kam bald die Zeit der Hochschule. Dort erschließen sich die Hintergründe wie ein PC „denkt“, weswegen man sich dem PC gegenüber in bestimmter Weise ausdrücken muss und warum er manche Ausdrücke nicht versteht. Nun kommen auf mich noch fünf Semester zu, in denen sich drei Monate Hochschule und drei Monate im Unternehmen regelmäßig abwechseln.

Kann man eine Programmiersprache, kann man sich in die meisten anderen hineindenken. Auch die Internetseiten, auf denen Sie nun weitersurfen, werden im Hintergrund einen recht leicht verständlichen Programmiercode haben, wenn man einmal in die Welt der Programmierung  eingestiegen ist. Interessiert es Sie, wie ein Computer „denkt“? Möchten Sie gerne wissen was man einem Computer „mitteilen“ muss, damit er neue Berechnungen durchführen kann? Dann empfehle ich Ihnen eine Ausbildung als Informatikkaufmann/frau oder Fachinformatiker/in bei gicom.

Autorin: Samira Ehmer

Meine Erfahrung mit Xcode

Apps für iOS Geräte wie dem iPad oder dem iPhone werden in Apples Entwicklungsumgebung Xcode programmiert. Nachdem man Xcode komfortabel über den App-Store bezogen hat, kann es auch schon los gehen. Programmiert wird in Objective-C (ObjC), einer objektorientierten Version der bekannten Programmiersprache C. Damit man alle Funktionen des iPads auch nutzen kann, gibt es das CocoaTouch-Framework. Das wird mit Xcode gleich mitgeliefert und man kann leicht die Gestensteuerung oder andere bekannte Funktionalitäten ansprechen.

Nun legen wir das erste Projekt an. Die Oberfläche von Xcode wirkt aufgeräumt. Auf der rechten Seite bieten sich eine Vielzahl von Einstellungsmöglichkeiten, wie beispielsweise welche Funktionen die App nun auf welcher Weise unterstützen soll. Hier kann man auch ganz einfach und schnell zusätzliche Bibliotheken einbinden. Am linken Bildrand ist die Navigationsleiste, wo man schnell auf die Klasse seines Projektes zugreifen kann. Später erreicht man über diese Navigationsleiste zügig gefundene Fehler des Debuggers, selbstgesetzte Haltepunkte oder Programmabschnitte über die leistungsfähige Suchhilfe.

Eine App besteht aus einem Hauptfenster (MainWindow), einer Hauptanweisungsklasse (AppDelegate), sowie beliebig viele weitere Klassen, für die verschiedenen Sichten oder zum Auslagern von Methoden. Das Hauptfenster bleibt in der Regel leer, man bindet jeweils nur verschiedene Sichten (Views) ein. Diese Sichten ähneln den (etwas überholten) Frames bei HTML. Da bei ObjC absolut alles objektorientiert ist, sind auch die Sichten jeweils ein Objekt, gesteuert durch eine Klasse (ViewController). Eine Klasse besteht immer aus zwei Bestandteilen: einer Kopfdatei (.h) und einer Hauptdatei (.m). In der Kopfdatei werden alle Deklarationen gemacht, der ausführbare Quelltext steht dann in der Hauptdatei.

Die automatische Quelltextvervollständigung und das obligatorische Syntaxhervorheben helfen den strengen Anforderungen des Compilers gerecht zu werden, führen aber auch zu einem sauberen und aufgeräumten Quelltext. Nennenswert ist noch die mitgebrachte Testumgebung. Zu den Bordmitteln gehören ein iPhone- und iPad-Simulator, um zu sehen, wie sich sein Werk auf diesen Geräten verhält. Dazu gehört auch ein Verhaltensanalysewerkzeug, dass die Lauffähigkeit der App auf dem Endgerät unter verschiedensten Blickwinkeln testet. Neben selbst geschriebenen Testroutinen sind bereits automatische Skripte vorgegeben, wie die Analyse der Beanspruchung der CPU, der Speicherzugriffe und anderen simulierten Langzeittests.

Mit Xcode kann man sich in der App Programmierung für Apples Endgerät richtig frei entfalten. Prinzipiell gesehen gibt es kaum Grenzen, die von Apple vorgegeben werden. Nebenbei können nicht nur Apps für iPhone, iPad und Co. erstellt werden, sondern auch für den Mac selbst.

 Autor: Felix Pliester