Wat is het omgaan met uitzonderingen?
Uitzonderingsafhandeling is een veelgebruikte programmeertaalconstructie waarmee programma's fouten die ze tijdens het uitvoeren kunnen tegenkomen, kunnen identificeren en netjes kunnen verwerken. Het werkt door de stroom van een programma te wijzigen van normale uitvoering naar een specifieke set mitigerende acties wanneer een fout wordt gevonden. Een programmeur kan specifieke sets acties maken die worden opgeroepen wanneer bepaalde fouten optreden. Het vinden en verwerken van uitzonderingen is niet noodzakelijk een fatale gebeurtenis voor een programma; het is soms mogelijk dat de uitvoering van het programma doorgaat nadat de verwerking van uitzonderingen is opgetreden.
Het is vaak mogelijk om tijdens het programmeren van een specifiek stuk code precies te bepalen waar afhandeling van uitzonderingen noodzakelijk is. In dat geval hebben de meeste programmeertalen, waaronder Java en C ++, specifieke trefwoorden en besturingsstructuren die in code kunnen worden geplaatst om fouten af te handelen. Deze structuren kunnen een grote verscheidenheid aan fouten verwerken en met goed onderhoud is het vaak mogelijk voor een programmeur om de meerderheid van mogelijke fouten voor een bepaald stuk code te voorzien.
Uitzonderingsafhandeling kan ook nuttig zijn voor het parseren van invoer. Wanneer u bijvoorbeeld numerieke invoer parseert, kunt u meteen zien of een stuk gegevens niet-numeriek is als de juiste test- en uitzonderingshandler is ingesteld. Als er een uitzondering optreedt, wordt deze door de handler opgevangen, wat het programma onmiddellijk vertelt dat invoer ongeldig is. Wat er vervolgens gebeurt, hangt af van hoe de rest van het programma is gestructureerd; het kan worden afgesloten of het kan doorgaan en de ongeldige invoer gewoon negeren.
De juiste afhandeling van uitzonderingen garandeert geen foutloze uitvoering van het programma. Het garandeert ook niet dat een programma stopt nadat een fout is gevonden, en het garandeert niet dat een programma zal doorgaan. Om fouten correct te kunnen afhandelen, moet een programmeur uitzonderingsafhandeling gebruiken in combinatie met gezond verstand en zorgvuldige aandacht voor detail. Idealiter zorgt een juiste foutafhandeling ervoor dat een programma de meest ernstige soorten fouten, zoals ongeldige toegang tot het geheugen, vermijdt en informatieve berichten geeft over herstelbare problemen, zoals ongeldige invoer of onverwachte problemen met de uitvoering van een programma.
Uitzonderingsafhandeling vangt fouten die "runtime" -fouten worden genoemd; het kan niet garanderen dat code vrij is van bugs of syntaxisfouten. Het hebben van foutafhandeling in code kan niet garanderen dat de code correct is. Het is mogelijk voor foutafhandeling om fouten in de code te missen, en zelfs de beste foutmelding is zelden onfeilbaar. Nadat het debuggen is voltooid, zorgt de aanwezigheid van uitzonderingsbehandeling voor veel eenvoudiger code-onderhoud en indien nodig in de toekomst debuggen.