Verouderd
"Verouderd" is een term uit de ontwikkeling van software voor functies die worden uitgefaseerd en vervangen. Een verouderde functie in een programmeertaal of software-applicatie kan nog steeds werken, maar wordt niet langer ondersteund of verbeterd. De meeste verouderde functies worden uiteindelijk volledig verwijderd. De ontwikkelaars van een programma of programmeertaal kondigen het verouderd raken van een functie meestal maanden of jaren van tevoren aan, zodat softwareontwikkelaars tijd hebben om een vervanging te implementeren.
Programmeertalen en softwareapplicaties die actief worden ontwikkeld, vervangen soms oude functies en andere onderdelen door volledig nieuwe vervangers. In PHP werd bijvoorbeeld de functie money_format(), die een getal opmaakt als een valutatekenreeks, verouderd verklaard ten gunste van de robuustere NumberFormatter-klasse, die getallen op veel manieren kan opmaken, ook als valuta. De oude functie money_format() bleef werken nadat het verouderd raken ervan was aangekondigd met PHP 7.4, zodat PHP-ontwikkelaars tijd hadden om hun broncode vooraf bij te werken voordat de functie volledig werd verwijderd in PHP 8.
Verouderd zijn betekent niet altijd dat een functie wordt verwijderd, vooral niet in een programma of een taal die al lange tijd bestaat. Een verouderde functie kan blijven bestaan voor achterwaartse compatibiliteit, zelfs als er een betere implementatie beschikbaar is of als de oorspronkelijke methode instabiliteit van het systeem veroorzaakt, zodat oude software zonder een volledige herziening kan blijven werken. De functie escape() van JavaScript werd bijvoorbeeld verouderd verklaard vanwege slechte ondersteuning voor Unicode-tekens, maar is in de meeste webbrowsers nog steeds beschikbaar, zodat oude JavaScript-code kan worden uitgevoerd.
Software- en programmeertaalfuncties kunnen om verschillende redenen verouderd raken:
- Er wordt een vervangende functie geïntroduceerd die dezelfde taak uitvoert met betere prestaties of minder complexiteit, waardoor de verouderde functie overbodig wordt.
- Oude functies die niet overeenkomen met de huidige staat van het programma of de taal, kunnen verouderd worden verklaard ten gunste van een opnieuw ontworpen versie. Deze functies kunnen verouderde syntaxis of naamgevingsconventies gebruiken die een nieuwe programmeur in verwarring kunnen brengen. Daarom worden ze verouderd verklaard en vervangen door versies die beter aansluiten op moderne standaarden.
- Een functie met een ontwerpfout, zoals een beveiligingsprobleem of geheugenlek, kan verouderd worden verklaard om het gebruik ervan te ontmoedigen.
- Overbodige functies kunnen verouderd worden verklaard en verwijderd om de complexiteit van het systeem te verminderen.
- Geplande wijzigingen in een programma of taal zorgen ervoor dat een bestaande functie niet meer werkt. Daarom wordt deze vooraf als verouderd gemarkeerd om ontwikkelaars aan te moedigen een alternatief te gebruiken dat hierdoor niet wordt beïnvloed.
NOTE: De ontwikkelaars van een programma of programmeertaal kondigen het verouderd raken van functies aan in hun documentatie en releaseopmerkingen. Verouderde functies in een programmeertaal veroorzaken ook waarschuwingsberichten in de geïntegreerde ontwikkelomgeving (IDE) van die taal wanneer softwareontwikkelaars deze proberen te gebruiken.
Test je kennis