Articles in category: OOP

No Country For If Else

This article is also available in english

Elviro Rocca Elviro Rocca avatar

21 minute read

C’è un ospite indesiderato che ci accompagna sempre mentre scriviamo codice e realizziamo progetti software: si tratta del codice già esistente, e dobbiamo tener conto della sua complessità man mano che la code base aumenta di dimensioni. Un’elevata complessità del codice può rendere le seguenti attività particolarmente difficili:

  • comprendere il significato di codice vecchio, scritto da altri o da se stessi;
  • tracciare le cause di bug, cioè errori, nel codice;
  • eseguire modifiche a una certa procedura;
  • aggiungere funzionalità a strutture già esistenti;

Anche approcciando lo sviluppo di nuovo software con metodologie agili, dobbiamo comunque fare i conti con il codice esistente, e per farlo dobbiamo almeno essere in grado di comprenderlo senza sforzi eccessivi. Dunque quando parlo di complessità mi riferisco in particolare alla difficoltà con la quale una programmatore è in grado di ragionare sul codice. La prefazione del noto testo accademico Structure and interpretation of computer programs contiene la seguente frase: