Unii spun că avansul cel mai mare în ce privește productivitatea în programare realizat de o tehnologie se datorează managementului automat al memoriei. În C++ și precursori (nu mă refer la limbaje interpretate / de scripting), orice zonă de memorie alocată trebuie “manual” eliberată. Asta duce la o mulțime de erori: uneori memoria rămîne blocată adică alocată și uitată așa și se tot adună, alteori se încearcă dealocarea unei zone deja dealocate rezultînd închideri bruște și neprevăzute ale aplicațiilor, uneori cu documente rămase nesalvate, alteori ducînd chiar la virusarea calculatorului (erorile legate de alocarea/dealocarea de memorie pot fi exploatate de viruși).
În .NET sau Java de exemplu, poți aloca fără grijă memoria. Odată ce nu mai e folosită, cineva în mod magic o reintroduce în circuit spre a fi refolosită. Sigur că nimic nu e gratuit dar mecanismul e chiar magic și fără el serverele în mod special ar merge mult mai prost. Probabil mecanismul ăsta se întîmplă continuu în fundal și pe calculatoarele voastre în timp ce citiți rîndurile astea – aproape niciodată nu ești conștient de treaba extraordinară ce se întîmplă tăcut. E partea din programe care nu se vede niciodată dar fără de care viața programatorilor și în final a utilizatorilor programelor ar fi mult mai complicată.
Patrick Dussud e un tip deștept, probabil unul din cei mai buni dintr-un domeniu special. Omul e autorul sau arhitectul sistemului de management al memoriei al platformei .NET de la Microsoft. Specialitatea lui e reciclarea memoriei care a fost și nu mai e folosită la ceva util de un program. De foarte multă vreme omul se ocupă de problema asta și a realizat lucruri extraordinare. Pentru merite deosebite Dussud a ajuns Microsoft Technical Fellow, un titlu foarte înalt la Microsoft (sînt puțini care l-au obținut). Acum e arhitect șef al runtime-ului .NET.
În engleză procesul de reciclare a memoriei nefolosite (management automat al memoriei) se numește “garbage colllection” (colectarea gunoiului).
La un moment dat, unul din copii săi a fost întrebat la școală cu ce se ocupă tatăl său. Acesta a răspuns “tata se ocupă de colectarea gunoiului la Microsoft”.
Pentru programatorii care lucrează .NET sau cu “garbage collection” sau pur și simplu pentru programatori care vor să vadă oameni deștepți din domeniu, cîteva linkuri care merită urmărite:
Patrick Dussud: Managing Garbage Collection