26-07-2021 - Sviluppo Software

Astrazione o semplificazione?

La massima aspirazione di un programmatore è ridurre la complessità del proprio software in modo da renderlo facile da modificare e comprensibile a chiunque lo legga.

La complessità è nemica della programmazione e astrazione significa rendere gestibili le cose più complicate.

Troppi moduli che interagiscono tra di loro possono far diventare il nostro software estremamente complesso e in questo caso non sarebbe possibile modificare singolarmente un modulo per le troppe interdipendenze dagli altri.

 

L’unica strategia per semplificare un software è, quindi, quella dell’astrazione per facilitarne la progettazione, manutenzione e la stessa comprensione.

Attenzione però, se un’astrazione non è necessaria e viene introdotta aumenta la complessità del codice. A volte, infatti, la mancanza di capacità progettuale crea più problemi che soluzioni.

 

Come essere un buon programmatore allora? E come è cambiato il ruolo del programmatore col passare del tempo?

 

Ne abbiamo parlato nella nostra live Astrazione o semplificazione con un caro amico nonché un programmatore davvero straordinario: Salvatore Sanfilippo, creatore di Redis.