Easy Install
Für diesen Kurs gibt es ein Dockerimage, welches fertig eingerichtet ist. Wir empfehlen dieses zu verwenden.
-
Docker installieren auf Windows.
-
Dieses Repository clonen.
-
Ein Terminal öffnen, in den cobol-workspace Ordner navigieren und die folgenden Befehle ausführen:
docker rmi frankr85/cobol:latest -f
docker run -it --mount src="$(pwd)",target=/root/cobol,type=bind frankr85/cobol:latest bash
- Testen, ob der GnuCOBOL bei euch läuft. Gebt dazu folgendes in das Terminal ein:
cobc -x -j helloworld/HELLWORLD.CBL
Die Ausgabe sollte so aussehen:
Hallo WWU!
- Testen, ob der das Testframework bei euch läuft:
./testframework/run-ut.sh
Die letzten Zeilen der Ausgabe sollte in etwa so aussehen:
1 TEST CASES WERE EXECUTED
1 PASSED
0 FAILED
=================================================
- IDE eurer Wahl installieren. Unsere Empfehlung: Visual Studio Code mit der Extension bitlang.cobol.
DIY Install
Ihr könnt den GnuCOBOL-Compiler und evtl. die verwendeten Projekte auch selber installieren. Allerdings müsst ihr das Ganze dann selber zum Laufen bringen.
Für die Unittests verwenden wir das Projekt cobol-unit-test von neopragma
Für diesen Kurs wurde eine Kurzeinweisung in COBOL geschrieben. Ihr findet sie hier.
Die komplette Dokumentation für den GnuCOBOL-Compiler der Version 3.1 findet ihr hier.
Gewöhnlich beginnt man das Erlernen einer neuen Programmiersprache mit einem Hallo Welt
-Beispiel.
Dieses Beispiel findet ihr im Ordner helloworld
. Nachdem ihr den Container gestartet habt und euch mit einer Shell verbunden habt, könnt ihr in das Verzeichnis wechseln:
cd helloworld
Und die Datei HELLOWORLD.CBL
anschließend kompilieren:
cobc -x HELLOWORLD.CBL
Der Compiler erzeugt ein Binary HELLOWORLD
, welches ihr ausführen könnt:
./HELLOWORLD
Die Ausgabe sollte
Hallo Wwu!
sein.
Damit ihr euch auf das Entwickeln und nicht das Einrichten des Entwicklungs- und Testtools konzentrieren könnt, haben wir euch eine Kopierbasis bereitgestellt, an der ihr nur wenige Anpassungen durchführen müsst:
- Kopiert den Ordner kopierbasis
- Ersetzt alle Vorkommnisse von kopierbasis durch euren Projektnamen, bspw. mypgm:
- ./kopierbasis in ./mypgm.
- ./kopierbasis/src/KOPIERBASIS_M.CBL in ./mypgm/src/MYPGM_M.CBL (Euer Hauptprogramm)
- ./kopierbasis/test/KOPIERBASIS_T.CBL in ./mypgm/test/MYPGM_T.CBL (Eure Tests)
- ./kopierbasis/test/resources/KOPIERBASIS_C in ./mypgm/test/resources/MYPGM_C (Copies)
- Ändert in der Datei /kopierbasis/run-ut.sh kopierbasis in mypgm und KOPIERBASIS in MYPGM.