Zo stap je als developer over van Java naar Csharp

Tjieco van Donselaar

Als software developer kom je de talen Java en Csharp (oftewel C#) natuurlijk veel tegen. Ze hebben veel overeenkomsten, maar op detailniveau zijn er ook flinke verschillen. Onze developer Tjieco van Donselaar (25) maakte de overstap en vertelt over zijn ervaringen, uitdagingen in de praktijk en zijn oplossingen.

Terug naar Covadis

Als jonge software developer ben ik tijdens en na mijn opleiding (HBO ICT aan de HAN) helemaal vertrouwd geraakt met Java. Ik werkte eerst twee jaar via een detacheringsbureau voor verschillende organisaties, tot ik een vaste werkomgeving wilde met een leuk team van collega’s. Dat vond ik bij Covadis. Waar ik eerder vooral met Java werkte, kon ik hier ook al snel aan de slag met C#. Dat leek me inhoudelijk een leuke uitbreiding en ook handig om als extra taal naast Java mee uit de voeten te kunnen.

Veel overeenkomsten Java en C#

Op hoofdlijnen kon ik de overstap vrij snel maken, want in beginsel lijken de talen sterk op elkaar. C# is een iets jongere taal. De eerste versie is van 2000, terwijl Java ontstond in 1996. C# is object-georiënteerd en lijkt qua syntaxis en semantiek sterk op Java. Wel bevat het voorzieningen waardoor je ook in andere programmeerstijlen kan werken. De bibliotheken en programmeeromgeving zijn sterk beïnvloed door Object Pascal en Delphi.

Bij Covadis kon ik begin 2023 al snel voor een opdrachtgever aan de slag met C#. Ik heb eerst een API opgebouwd en ben voor het front-end veel schermen gaan bouwen. De data komt uit de bestaande database. Het zijn veel tabellen die ook connecties hebben met elkaar. Ik heb bij dit project veel technische en creatieve vrijheid. Dat maakt het extra leuk!

Oplossingen

Mijn ervaring is dat je na enige verdieping gewoon vrij snel kunt starten met C# en veel detailverschillen kunt uitzoeken en oplossen als je er tegenaan loopt. Daar moet je voor jezelf in het begin dus wel extra tijd voor nemen. Maak het jezelf ook niet te moeilijk en begin vooral met de tools die je hebt in C#. Daarnaast kun je altijd hulplijnen inzetten. Ik loste veel op door intern een andere expert even te vragen. Dat is ook weer het voordeel van een team. Daarom werk ik ook het liefst op kantoor, dan zijn je collega’s in de buurt en wordt ik minder snel afgeleid.

Naast het raadplegen van collega’s helpt Google natuurlijk ook goed om de juiste oplossingen te vinden. Het viel mij ook op dat als ik andere developers om advies vroeg, er toch vaak verschillende meningen naast elkaar komen te liggen. Als iets voor mij niet logisch klinkt, vraag ik daarom goed door over die verschillen. Dat is ook een tip uit mijn praktijk.

Voorkeur en meertaligheid

Veel mensen vragen sinds mijn ‘overstap’ welke van de twee talen nu mijn voorkeur heeft. Die heb ik niet echt. Voor mij was Java als eerste ‘moedertaal’ eerst natuurlijk wel meer vertrouwd. Ik vind nu vooral de meertaligheid een voordeel omdat ik op deze manier een bredere kennis heb waarmee ik collega’s en klanten kan helpen. Ik zie het ook niet echt als ‘overstap’, maar vooral als waardevolle uitbreiding van mijn talenkennis. Om die meertaligheid goed te benutten, zal ik ze wel allebei moeten onderhouden. Anders heb je kans dat de ene taal wat wegzakt.

Hoe nu verder?

Het leukst van het werken in mijn nieuwe taal vind ik nu vooral als ik iets nieuws heb gebouwd en merkt dat het werkt zoals ik hoopte. Dat blijft gewoon heel tof. Wat voor projecten ik hierna precies ga doen, moet nog blijken. Na de oplevering van dit project moet de opdrachtgever ook zelfstandig in C# kunnen werken. Daarin zal ik ze ook op weg helpen. Wie weet komt er een vervolgproject bij hen en anders ga ik door naar iets nieuws. Dat is het mooie van al die leuke projecten bij Covadis.

Voor de toekomst droom ik er wel van om eens een groot inhouse project te doen, helemaal vanaf het prille begin tot en met de oplevering. Gewoon lekker met hetzelfde team aan één groot project werken.