Wat is laat bindend?
Late binding is een computerprogrammeerterm die beschrijft wanneer een programma voor het eerst toegang krijgt tot een deel van de code. De meeste programma's worden geschreven als tekst en vervolgens gecompileerd in een functionerend programma. Tijdens dit proces controleert de compiler alle verbindingen in het programma om ervoor te zorgen dat deze aanwezig en in principe nauwkeurig zijn. Met late binding heeft de compiler geen toegang tot sommige delen van het programma, zodat ze tijdens de compilatie buiten beschouwing worden gelaten. Wanneer het programma wordt uitgevoerd, wordt de code naar behoefte toegevoegd.
Het bindende deel van late binding verwijst naar het verbinden van een deel van de code met de rest van het programma. De overgrote meerderheid van een programma moet aanwezig en nauwkeurig zijn tijdens het compileren. De compiler doorloopt het hele programma om te controleren of alle oproepen naar dingen gaan die daadwerkelijk bestaan en of de geretourneerde informatie de juiste indeling heeft. Dit betekent niet dat het programma werkt zoals bedoeld; het betekent eenvoudig dat het potentieel er is.
In een programma dat laat binden gebruikt, ontbreekt een deel van het programma. De compiler krijgt de opdracht om dat deel in principe te negeren en door te gaan. Soms worden de oproepen zo geschreven dat de compiler niet eens doorheeft dat ze er zijn. Hierdoor worden sommige delen van het programma in feite gescheiden van het hoofddeel.
De belangrijkste reden om late binding te gebruiken, is om upgrades te vereenvoudigen. Door bepaalde delen van de code uit het hoofdprogramma te halen, is het mogelijk om die secties te wijzigen zonder het programma te decompileren en opnieuw te compileren. Dit maakt dat gedeelte van het programma ook volledig zelfstandig, waardoor verschillende soorten toegang of beveiligingsfuncties mogelijk zijn.
Hoewel late binding zijn nut heeft, is het een twijfelachtige coderingsmethode. Omdat het programma op het laatste moment wordt gedwongen code toe te voegen, vertraagt het het hele proces. Het programma kan niet doorgaan totdat het het bestaan van het late gedeelte heeft geverifieerd en bepaalt dat het correct werkt. Hoewel deze verificatie slechts een fractie van een seconde kan duren, moet het programma dit elke keer doen wanneer het het laatste deel betreedt.
Wat betreft het vereenvoudigen van upgrades, het werkt goed - maar dat geldt ook voor minder schadelijke processen. Door een deel van het programma uit de compiler te houden, kunnen zelfs kleine kleine problemen, zoals een getransponeerde letter of een extra spatie tussen twee woorden, een programmafout veroorzaken. Om deze en andere soortgelijke redenen is late binding een minder gebruikelijke optie voor nieuwere programmeertalen.