5 manieren om codeervaardigheden te verbeteren met ChatGPT

Blog

Wil jij als developer beter worden in je vak? Zoek dan niet verder! In deze blog schetsen we vijf tips voor het gebruik van ChatGPT om een betere developer te worden, inclusief het samen zoeken naar oplossingen voor toepassingsproblemen, het opsporen van fouten in code, het uitleggen van codefunctionaliteit, het schrijven van betere tests en het verbeteren van de leesbaarheid van de code.

ChatGPT helpt door mee te zoeken naar de oorzaak van een probleem in je toepassing

Mijn team en ik ondervonden een probleem in onze applicatie, waarbij gegevens moesten worden opgenomen en modellen nog moesten worden bijgewerkt. Wij werken aan een Angular applicatie.

Ik ontdekte bijvoorbeeld de kracht van het ontdekken van oplossingen en problemen in een applicatie.

Situatie: De RxJS Subscripition bestond niet

Na lang zoeken via Google begonnen we vragen te stellen aan ChatGPT. We zijn begonnen met de volgende vraag:

“We gebruiken RxJS; we hebben een BehaviourSubject, maar in het begin worden de gegevens ontvangen door de  “subscribe()” methode, maar later niet. Wat zou het probleem kunnen zijn?”

ChatGPT begon de vraag te beantwoorden met mogelijke situaties. Ten slotte stelde ChatGPT voor om te controleren of de subscripition nog actief was. ChatGPT bood ons ook een oplossing om het te controleren.

En dat werkte. Uiteindelijk hebben we de oorzaak gevonden en konden we het probleem oplossen.

De vraag:

Het antwoord:

ChatGPT helpt bij het opsporen van problemen met falende tests

In de afgelopen maanden hebben we ChatGPT opgenomen in al ons werk.

Soms kun je falende tests hebben waar de oorzaak niet meteen duidelijk is. ChatGPT kan dan helpen de problemen te ontdekken en helpen bij het vinden van de oplossing.

Bijvoorbeeld bij de volgende situatie. Dit kwamen wij de laatste tijd tegen:

Situatie: Datumfunctie verkeerd berekende datum met Vanilla JavaScript

Onlangs hebben we een oude datumbibliotheek vervangen door een nieuwe. Maar we moesten een vertaallaag creëren, zodat onze afhankelijkheden nog steeds werken.

Nadat we dat hadden gedaan, controleerden we de end-to-end tests. En wat was het geval? Eén fout! Een methode die vroeger werkte, werkte nu niet meer.

getCalculatedDate(days: number, months: number, years: number) {
  const today: Date = new Date();
  const calculatedDate = new Date(
    today.getFullYear() + years,
    today.getMonth() + months,
    today.getDate() + days
  );
  const days = String(calculatedDate.getDate()).padStart(2, '0');
  const months = String(calculatedDate.getMonth() + 1).padStart(2, '0');
  const years = String(calculatedDate.getFullYear());
  const formattedDate = days + '-' + months + '-' + years;
  return formattedDate;
}

Het probleem was één uur tijdsverschil. Hoewel we de invoer van de methode niet hebben gewijzigd, heeft de uitvoer van de vergelijkingsfunctie dat wel gedaan.

Na meerdere keren proberen, begonnen we vragen te stellen aan ChatGPT:

  • Wat als ik 3 maanden en 1 dag toevoeg aan vandaag? Welke datum is dat?
  • Leg de berekening uit.
  • Zou het antwoord anders zijn als je eerst dagen optelt in de berekening?

Uiteindelijk hebben we de functie aan ChatGPT gegeven en gevraagd wat hier niet goed ging. ChatGPT ontdekte dat je eerst een dag aan de datum moet toevoegen in vanilla JavaScript. Maak vervolgens een nieuwe datum en voeg de maand en het jaar toe.

Het grappige was dat het gebeurde op de 31e dag van de maand. En er lijken eigenzinnige dingen te zijn met datums (DATES) in JavaScript (zoals velen van ons weten).

Uiteindelijk hebben we het opgelost. Maar dit laat zien dat als je veel vragen stelt aan ChatGPT, het veel dingen uitlegt en het uiteindelijk kan helpen bij het oplossen van problemen.

Situatie: ChatGPT legt een stukje code uit

Omdat ik in een grote codebase werk, die ontwikkeld en onderhouden wordt door veranderende teamleden, kan de code niet altijd zo duidelijk zijn als je wilt.

ChatGPT kan je hierin ook helpen. Het heeft me geholpen om de functionaliteit veel eenvoudiger te maken en beter te begrijpen, zodat ik het kon herschrijven.

Geef ChatGPT een stukje van de code en vraag om het uit te leggen. Zo simpel is het.

Voorbeeld: Vraag om uitleg

Antwoorden:

ChatGPT kan je helpen betere tests te schrijven

Voor veel developers is het schrijven van tests een uitdagende taak. Na meer dan tien jaar ervaring vraag ik me soms nog steeds af:

  • Welke testen heb ik nodig?
  • Hoeveel testcases moet ik maken?
  • Heb ik alle randgevallen afgedekt?

En nog veel meer. ChatGPT heeft me hiermee ook geholpen.

Soms gebruik ik het om te brainstormen en te vragen om extra testcases die ik heb gemist.

ChatGPT heeft mijn team en mij echt geholpen, waardoor ik betere code geschreven heb om te testen.

Situatie: ChatGPT kan jouw code herschrijven voor een betere leesbaarheid

Soms vind je codevoorbeelden online en vraag je je af hoe het werkt en of er een eenvoudigere manier is om ze te schrijven.

Plaats een code in ChatGPT en vraag het om deze te herschrijven. Zo simpel is het en het helpt echt!

Voorbeeld: Laten we zeggen dat we een complexe productstructuur in onze API hebben.

{
  "products": [
    {
      "id": 1,
      "name": "Product A",
      "category": {
        "id": 10,
        "name": "Electronics",
        "properties": {
          "warranty": "1 year",
          "returnPolicy": "30 days"
        }
      },
      "brand": {
        "id": 100,
        "name": "Brand X",
        "properties": {
          "country": "USA",
          "established": "1995"
        }
      },
      "properties": {
        "color": "black",
        "weight": "1.2 kg"
      }
    },
    {
      "id": 2,
      "name": "Product B",
      "category": {
        "id": 11,
        "name": "Furniture",
        "properties": {
          "material": "wood",
          "assemblyRequired": "yes"
        }
      },
      "brand": {
        "id": 101,
        "name": "Brand Y",
        "properties": {
          "country": "Germany",
          "established": "2001"
        }
      },
      "properties": {
        "dimensions": "100x50x30 cm",
        "color": "brown"
      }
    }
  ]
}

We willen de producten sorteren op basis van de eigenschap retourbeleid. Een ander heeft deze functie lang geleden ontwikkeld. Het is niet makkelijk te lezen, dus we willen het leesbaarder maken en TypeScript toevoegen.

function s(p){
  return p.sort((a,b)=>a.category.properties.returnPolicy.localeCompare(b.category.properties.returnPolicy))
}

We kunnen ChatGPT vragen om het leesbaarder te maken en typen toe te voegen. Dit is het resultaat:

interface Properties {
  returnPolicy?: string;
  [key: string]: any;
}

interface Category {
  id: number;
  name: string;
  properties: Properties;
}

interface Product {
  id: number;
  name: string;
  category: Category;
  [key: string]: any;
}

/**
 * Sort an array of products based on the "returnPolicy" property.
 * @param {Product[]} products - The array of products to be sorted.
 * @return {Product[]} - The sorted array of products.
 */
function sortProductsByReturnPolicy(products: Product[]): Product[] {
  return products.sort((productA, productB) => {
    return productA.category.properties.returnPolicy.localeCompare(
      productB.category.properties.returnPolicy
    );
  });
}

Zoals je kunt zien, schreef ChatGPT een product-, categorie- en generieke eigenschappeninterface en paste deze toe op de functie. Maar het voegde er ook enkele expliciete opmerkingen aan toe.

Dus refactoring wordt een stuk eenvoudiger met ChatGPT!

Conclusie

Kortom, ChatGPT kan developers op vele manieren helpen. Of je nu net begint of al jaren developer bent, ChatGPT kan je helpen verbeteren. Deze blog biedt vijf tips voor het gebruik van ChatGPT voor probleemoplossing en leesbaarheid van code. Door ChatGPT te gebruiken, kun je sneller en met minder fouten code schrijven.

Een van de beste dingen van ChatGPT is dat het fouten in code kan vinden. Zelfs ervaren developers maken fouten en het vinden ervan kan lastig zijn. ChatGPT maakt het makkelijk om fouten te vinden en op te lossen. ChatGPT kan je ook uitleggen wat een code doet en betere tests schrijven.

ChatGPT is ook goed in het makkelijker leesbaar maken van code. Grote codebases kunnen moeilijk te onderhouden zijn, vooral als de code beter geschreven moet worden. Om de leesbaarheid van code te verbeteren, kun je met ChatGPT een code toegankelijker maken voor andere developers om te begrijpen.

Een van de krachtigste eigenschappen van ChatGPT is dat het developers kan helpen beter samen te werken. Developers kunnen effectiever werken met ChatGPT om mee te denken over oplossingen, fouten te vinden en de codekwaliteit te verbeteren. In combinatie met menselijke ervaring kan ChatGPT developers helpen betere resultaten te leveren en innovatie te stimuleren.

Kortom, ChatGPT is een waardevolle tool voor developers van alle niveaus. Door de tips in deze blog te volgen en ChatGPT in je werk te gebruiken, kunt je betere code schrijven, tijd besparen en betere resultaten behalen. Of je nu een beginner of een expert bent, ChatGPT is de moeite waard om te verkennen om te zien hoe het jou en jouw team kan helpen.

Deel deze pagina:
Raymon
Auteur
Raymon
Developer

Heb je vragen over dit onderwerp of zou je Raymon willen inhuren voor een vergelijkbare opdracht?

Neem contact met ons op

Lees de blogs die onze experts geschreven hebben

Lees ze hier

Heb je een Microsoft 365 expert nodig?

Neem contact met ons op
Cookies beheren