COBOL: Leeft de programmeertaal nog? + Simpele uitleg en voorbeelden

Wil jij meer weten over COBOL? Dan zit je hier helemaal goed! COBOL is een oude programmeertaal die stamt uit de jaren 60 van de vorige eeuw. Leeft de programmeertaal nog wel? Een klein tipje: Er is nog steeds vraag naar COBOL developers/ontwikkelaars! Aan het eind van het artikel geven we nog tips over hoe jij COBOL kan leren. Lees snel verder!

Wat is COBOL en wat kan je ermee?

COBOL is een programmeertaal die vooral veel wordt toegepast in de zakelijke wereld, denk hierbij bijvoorbeeld aan systemen van banken, overheidsinstellingen en luchtvaartmaatschappijen.

Het Amerikaanse ministerie van Defensie (United States Department of Defence) had in 1959 de opdracht gegeven om COBOL te gaan ontwikkelen. COBOL is de afkorting van Common Business-Oriented Language.

Assembler en Fortran waren in die tijd de programmeertalen die het meest werden gebruikt. Het doel was om van COBOL een betere en makkelijkere programmeertaal te maken dan Assembler en Fortran.

De programmeertaal COBOL moest voor programmeurs makkelijker zijn om te begrijpen. Ook moest het makkelijker worden om code te schrijven en te onderhouden. De eerste COBOL versie (COBOL-60) kwam uit in 1960.

Daarnaast moest COBOL op meerdere soorten computers kunnen werken. COBOL was jarenlang erg overheersend als één van de meeste populaire programmeertalen wereldwijd, maar verdween daarna langzaam uit het zicht:

Simpelweg werd COBOL steeds minder gebruikt om systemen mee te maken. Daarvoor werden de moderne programmeertalen gebruikt, zoals Java. COBOL werd steeds meer bestempeld als oude “stoffige” programmeertaal.

Daarnaast werd COBOL onder andere ook nog bekritiseerd vanwege de slechte ondersteuning voor gestructureerd programmeren. Systemen geschreven in COBOL zijn vaak niet makkelijk om te begrijpen. Dat ligt meer aan de structuur. De code zelf is vaak wel eenvoudig te begrijpen.

Echter is COBOL verre van een dode programmeertaal! Veel systemen van banken en overheidsinstellingen draaien nog op COBOL. Regelmatig zoeken ze nog COBOL developers om de boel draaiende te houden.

COBOL developers zijn tegenwoordig zeldzaam. Als je echt een goede COBOL developer/ontwikkelaar bent, kan je wel zo’n €90.000 per jaar verdienen!

Donald Duck met geld

Mogelijkheden met COBOL

We weten nu dat veel systemen in de zakelijk wereld nog steeds draaien op COBOL, zoals systemen van banken, overheidsinstellingen en luchtvaartmaatschappijen.

Daar zoeken ze geregeld nog steeds COBOL developers voor. In dat straatje moet je het ook eigenlijk gaan zoeken qua mogelijkheden.

Deze systemen worden vaak niet doorontwikkeld, maar vooral het onderhoud is belangrijk. Veel systemen die draaien op COBOL zijn verouderd en zijn toe aan een goede onderhoudsbeurt.

Leuk om te weten is dat je met COBOL ook een game kan maken:

Voorbeelden van banken en organisaties die gebruik maken van COBOL

In Nederland draaien tegenwoordig nog systemen van grote banken en organisaties op COBOL. Laten we gaan kijken naar een paar voorbeelden.

ABN Amro

ABN Amro is één van de grootste banken in Nederland. Ook in een aantal andere landen is ABN Amro actief en in totaal zijn er ongeveer 6,8 miljoen klanten.

Deze bank is dus zeker geen kleine jongen en er moet echt een goed systeem staan om alle klanten te kunnen helpen.

De kans is groot dat de back-end van de mobiele applicatie van ABN Amro ook nog (gedeeltelijk) op COBOL draait.

ABN Amro logo op muur

ING

Net zoals ABN Amro, is ook ING één van de grootste banken van Nederland. ING is actief in meer dan 40 landen en heeft ongeveer 39 miljoen klanten.

Vergeleken met ABN Amro is ING dus nog een stuk groter, maar ook ING vertrouwt er nog steeds op dat COBOL goed is om het systeem draaiende te houden.

Waarschijnlijk draait de back-end van de mobiele applicatie ook nog (gedeeltelijk) op COBOL.

ING bank logo

RDW

RDW is een organisatie binnen de Nederlandse overheid. Het registreren van gemotoriseerde voertuigen en rijbewijzen kunnen mensen in Nederland bij het RDW doen.

Het is voor te stellen dat veel mensen in Nederland gebruik maken van het systeem van het RDW om registraties af te handelen. COBOL houdt het systeem (gedeeltelijk) draaiende.

De back-end van het systeem draait gedeeltelijk op COBOL. Het RDW is vaak op zoek naar nieuwe COBOL developers.

Voor- en nadelen van COBOL

Grote systemen van onder andere verschillende grote banken en overheidsinstellingen draaien al tientallen jaren op COBOL. Dit betekent dat COBOL veel voordelen heeft. Maar net zoals bij elke programmeertaal, zitten er ook natuurlijk nadelen aan COBOL.

Voordelen

  • Het is niet lastig om te lezen en begrijpen wat het doet, COBOL lijkt veel op de “gewone” Engelse taal
  • COBOL kan grote hoeveelheden data snel verwerken
  • Systemen die tientallen jaren geleden gebouwd zijn met COBOL, kunnen tegenwoordig nog steeds werken
  • Het is niet moeilijk om te leren
  • Goede samenwerking met databases
  • Volledig compatibel met vorige versies
  • COBOL heeft een goed systeem voor foutmeldingen. Het oplossen van bugs is daardoor eenvoudiger.

Nadelen

  • De syntax is vrij langdradig
  • Het duurt een stuk langer om een COBOL programma te compileren dan een machine georiënteerde programmeertaal
  • De community van COBOL is niet groot
  • Er worden nauwelijks nog nieuwe systemen gebouwd met COBOL

Verschillen tussen COBOL en Java

We gaan kijken naar de verschillen tussen COBOL en Java, omdat beide programmeertalen oorspronkelijk zijn gemaakt om op meerdere computersystemen te kunnen draaien.

Hieronder vind je enkele verschillen tussen COBOL en Java:

  • COBOL is een procedurele programmeertaal en Java is een OOP (Object Oriented Programming/Object georiënteerd programmeren) programmeertaal. Sinds de COBOL-2002 versie heb je echter ook de mogelijkheid om OOP toe te passen in COBOL.
  • De community van Java is veel groter. Veel meer programmeurs maken gebruik van Java.
  • Om systemen te vernieuwen worden ze soms omgezet van COBOL naar Java, andersom niet
  • COBOL is meer ontwikkeld om systemen mee te bouwen voor de zakelijke wereld, zoals voor banken en overheidsinstellingen. Java wordt gebruikt voor veel meer doeleinden buiten systemen voor de zakelijke wereld, zoals bij het ontwikkelen van games, apps, Internet of Things toepassingen en webapps.
  • COBOL is makkelijker om te lezen dan Java, omdat COBOL meer op de “gewone” Engelse taal lijkt

Ja, ik wil de uitdaging aangaan en COBOL leren!

COBOL code voorbeelden

Het is interessant om naar code voorbeelden van COBOL te kijken. Zo krijg je een iets beter beeld over hoe de syntax van de programmeertaal eruit ziet en hoe de code werkt.

Hello World!

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
PROCEDURE DIVISION.
    DISPLAY 'Hello World!'.
STOP RUN.

Bij een eerste kennismaking met een programmeertaal begin je meestal met een “Hello World!” voorbeeld. Voor een simpel “Hello World!” voorbeeld heb je toch aardig wat regels code nodig in COBOL.

In regel 1 staat IDENTIFICATION DIVISION. Dit is de eerste en enige “division” (Afdeling) die verplicht is in COBOL. De programmeur en compiler gebruiken deze “division” om het programma te identificeren.

In IDENTIFICATION DIVISION. staat een “paragraph” (Paragraaf) PROGRAM-ID. Dit is de enige verplichte “paragraph”. PROGRAM-ID. bevat de naam van het programma en die kan uit 1 tot 30 karakters bestaan.

In PROCEDURE DIVISION. staat alle logica van het programma. Hierin staan statements die de computer gaat uitvoeren. In dit geval voeren we het DISPLAY statement uit om “Hello World!” op het scherm te printen.

Er moet minimaal één statement in PROCEDURE DIVISION. staan. We sluiten het programma af met het STOP RUN. statement.

Variable (Variabele)

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
DATA DIVISION.
    WORKING-STORAGE SECTION.
        01 NAAM PIC A(6) VALUE 'Henk'.
PROCEDURE DIVISION.
    DISPLAY 'Naam: 'NAAM.
STOP RUN.

In regel 3 staat DATA DIVISION. In deze “division” staan variables (Variabelen) die in het programma gebruikt worden. WORKING-STORAGE SECTION. is bedoeld om tijdelijke variables in te zetten die in het programma gebruikt worden.

In regel 5 staat een variable en er wordt gelijk een waarde meegegeven. 01 is het “level number”. Het “level number” geeft het dataniveau in een record weer. Het maakt onderscheid tussen “elementary items” en “group items”.

NAAM is in dit geval de naam van de variable. PIC A(6) is de “Picture Clause”. De “Picture Clause” beschrijft de kenmerken van een “elementary item”.

De A in PIC A(6) staat voor alle alfabetische letters en de 6 tussen haakjes staat voor het aantal karakters die de variable kan bevatten. In dit geval kan de variable zes karakters bevatten en de karakters kunnen een letter uit het alfabet zijn.

VALUE wijst de waarde ‘Henk’ toe aan de variable. In regel 7 wordt de variable NAAM op het scherm geprint door het DISPLAY statement.

If-else statement

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
DATA DIVISION.
    WORKING-STORAGE SECTION.
        01 NUMMER1 PIC 9(2).
        01 NUMMER2 PIC 9(2).
PROCEDURE DIVISION.
    MOVE 24 TO NUMMER1.
    MOVE 36 TO NUMMER2.

    IF NUMMER1 IS GREATER THAN NUMMER2 THEN
      DISPLAY 'NUMMER1 is groter dan NUMMER2'
    ELSE
      DISPLAY 'NUMMER1 is kleiner dan NUMMER2'
    END-IF.
STOP RUN.

In dit stukje code zie je weer veel terugkomen van wat we in de vorige stukken code hebben besproken. Wat opvalt is dat de waardes van de variables nu worden toegewezen in de PROCEDURE DIVISION..

Via de MOVE statements worden de waardes aan de variables toegewezen. Het if-else statement is heel makkelijk te lezen als je Engels begrijpt.

Als variable NUMMER1 groter is dan NUMMER2, dan zie je ‘NUMMER1 is groter dan NUMMER2’ op het scherm. En als dat niet het geval is zie je ‘NUMMER1 is kleiner dan NUMMER2’ op het scherm.

Dit if-else statement laat mooi zien dat COBOL erg lijkt op de “gewone” Engelse taal.

Zelf COBOL leren

Hopelijk heb je een beter beeld gekregen van COBOL. Je weet nu ook een beetje hoe de syntax eruit ziet en hoe bepaalde code werkt. Misschien ben je wel enthousiast geworden om COBOL te gaan leren?

COBOL wordt tegenwoordig gezien als oude “stoffige” programmeertaal en weinig programmeurs willen het meer leren. Toch kan het interessant en zeer goed voor je portemonnee zijn om COBOL te gaan leren.

Vaak zoeken onder ander banken en overheidsinstellingen nog COBOL developers om hun systemen te onderhouden. COBOL developers zijn zeldzaam en worden daarom rijkelijk beloond. Dit kan wel oplopen tot €90.000 per jaar!

Op Pluralsight staat een geweldige cursus over COBOL voor beginners. Deze cursus is ideaal voor beginners om COBOL te gaan leren. Je leert om een echt COBOL programma te maken.

Pluralsight logo

In “Pluralsight review en ervaringen” lees je meer over het platform. Het is zelfs mogelijk om 10 dagen gratis gebruik te maken van het platform.

Na de cursus zou je zelf verder kunnen experimenteren met COBOL. Je hebt dan de kennis om gave projecten te bedenken en uit te voeren.

Op Pluralsight staan ook genoeg gave cursussen over de meer populaire programmeertalen, zoals Java en Python. De cursussen zijn zowel voor beginners als gevorderden.

Wil jij de uitdaging aangaan en COBOL leren? Het zal zeker goed op je CV staan en je zal rijkelijk beloond worden. Ga lekker aan de slag!

Heb je nog vragen en/of opmerkingen? Laat dan hieronder een reactie achter of neem contact op.

Ja, ik wil de uitdaging aangaan en COBOL leren!

Plaats een reactie