Try-catch is een structuur in code die een riskante actie probeert en elke fout opvangt als die actie mislukt. Het “try”-blok bevat de actie die mis kan gaan. Het “catch”-blok bevat het noodplan. Zo stopt niet het hele programma, maar wordt het probleem opgevangen en draait alles door.
Stel je voor dat je een glas opvangt dat van het aanrecht glijdt. Het glas willen grijpen is de “try”. Je hand klaar eronder is de “catch”: valt het, dan ben je voorbereid. In software kan de riskante actie het aanroepen van een betaaldienst zijn die even plat ligt. Met try-catch toont het systeem “probeer het opnieuw” in plaats van een fatal error bij de gebruiker.
Dit is een kernonderdeel van foutafhandeling. Mislukt de code in het try-blok, dan wordt er een exception opgeworpen, en het catch-blok bepaalt de reactie: loggen, opnieuw proberen, een nette melding tonen of terugvallen op iets veiligs. Goed gebruikt voorkomt het dat kleine storingen uitgroeien tot zichtbare drama’s. Er zit wel een valkuil in. Alles in een try-catch verpakken en de fout daarna negeren is erger dan helemaal geen vangnet, want de bug verstopt zich in plaats van zichtbaar te worden. Het catch-blok moet altijd iets eerlijks met de fout doen, al is het maar loggen voor later debugging. Een ingeslikte exception is een probleem dat je hebt afgesproken niet te zien, en juist die bijten het hardst om twee uur ‘s nachts.
Bij TopDevs verpakken we de delen van een systeem die met de buitenwereld praten in try-catch, zodat een hapering bij de dienst van iemand anders het product van onze klant nooit meesleurt.