I 10 libri di programmazione più consigliati dai programmatori

Libri sulla programmazione

In occasione della giornata mondiale del libro, abbiamo chiesto sui nostri profili social (in questo post) e anche su dei gruppi tematici (come su programmatori italiani) quale è il libro che proprio non può mancare nella libreria di un programmatore.

Abbiamo ricevuto moltissime risposte  – per questo ringraziamo tutti gli utenti – e questi sono i consigli che abbiamo raccolto, divisi in una classifica che non vuole essere affatto esaustiva.

10. C – Guida completaHerbert Schildt 
Libro che non regge ovviamente il paragone con il Kernighan&Ritchie (di cui parleremo più avanti), ma che viene consigliato per il taglio più pratico.

9. Introduction to AlgorithmsThomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
È stato definito “pietra miliare mondiale degli algoritmi” perchè è un libro che prescinde dai linguaggi di programmazione e le mode del momento, è sempre attuale e dà ottime basi di programmazione. Interessante per capire come sono stati risolti determinati problemi, è un ottimo libro di algoritmica, i teoremi sono spiegati in maniera concisa ma mai verbosa e offre un’ottima introduzione alle strutture dati (e ai relativi algoritmi) di base. 

8. The Pragmatic Programmer: From Journeyman to Master – Andrew Hunte e David Thomas 
Secondo molti, è il libro che devi conoscere se ti vuoi definire un programmatore.

7. Programmazione CPaul J. Deitel e Harvey M. Deitel 
A parere di tanti, il miglior manuale per un primo approccio alla programmazione in generale e al C, perché è particolarmente chiaro nella spiegazione e contiene tutti gli algoritmi standard. 

6. Clean Code: A Handbook of Agile Software Craftsmanship e Clean Architecture: A Craftsman’s Guide to Software Structure and Design –  “zio Bob” Robert Cecil Martin. Spesso citati insieme, sono libri importanti se reputi fondamentale la pulizia del tuo codice. 

5. Computer Networks Andrew S. Tanenbaum e David J. Wetherall  e Modern Operating SystemsAndrew S. Tanenbaum e Herbert Bos
Anche se trattano argomenti diversi, questi li mettiamo insieme per comodità, visto che sono entrambi di Tanenbaum.
Il primo libro “fa commuovere” molti commentatori, che lo descrivono come “mitico” e “un must have”.
Il secondo fa una panoramica interessante e gradevole da leggere di tutte le problematiche che i sistemi operativi devono affrontare. Si tratta di lettura affascinante perché, dato che il sistema operativo si trova tra l’hardware e il software applicativo, il libro di fatto tratta un po’ tutto quello che riguarda il funzionamento di un computer moderno.
In generale, l’autore è citato più e più volte per le sue opere principali, e sempre con espressioni entusiaste.

4. Head First! Design Patterns – Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra 
Ritenuto da molti una lettura obbligatoria, forse più divertente del quasi omonimo “Design Patterns” perché ha un approccio del tipo: Questo è quello che scrivevi -> Questo è il problema -> Facciamolo così. 
Non manca però chi, invece, lo ha trovato troppo dispersivo.

3. Design Patterns: Elements of Reusable Object-Oriented Software – Erich Gamma, Richard Helm, Ralph Johnson e John Vlissides (meglio conosciuti come la Gang of Four).
Che dire? Una pietra miliare per quanto riguarda il paradigma della programmazione a oggetti.

2. The art of computer programming Donald E. Knuth
Una serie di capolavori, i volumi sono splendidi e curati in ogni dettaglio. C’è chi l’ha definita una specie di enciclopedia degli algoritmi perchè sono trattati molto approfonditamente; tosto, un po’ datato in certi aspetti, ma sicuramente affascinante. 

1. Il linguaggio C. Principi di programmazione e manuale di riferimentoBrian W. Kernighan e Dennis M. Ritchie 
Il podio non poteva che spettare a questo manuale, definito: “il sancta sanctorum”, “un testo sacro della programmazione”, “per molti, il primo libro di programmazione, anzi per i vecchi hacker duri e puri, K&R è solo 1978”, “una lettura obbligatoria che butta i fondamentali per tutto il resto”.


Scrivere codice è la tua passione?

Unisciti ai team Develer

Lavora con noi

A questi, in Develer abbiamo voluto aggiungere anche altri titoli a noi cari, che non potevamo permettere rimanessero fuori!

Reti di calcolatori e internet. Un approccio top-downJames F. Kurose e Keith W. Ross Tutto quello che c’è da sapere sulle reti di calcolatori e soprattutto su come funziona Internet, dai suoi albori fino alle più moderne tecnologie.

Domain-Driven Design: Tackling Complexity in the Heart of SoftwareEric Evans e Martin Fowler
Un’altra pietra miliare sul design (in generale, però, non solo Object Oriented)

Structure and Interpretation of Computer ProgramsHarold Abelson, Gerald Jay Sussman, Julie Sussmanm e Alan J. Perlis
SICP è considerato un testo classico dell’informatica. Un’introduzione ad alto livello alla programmazione che ne illustra i principi sottostanti.

Programming Kotlin Create Elegant, Expressive, and Performant JVM and Android ApplicationsVenkat Subramaniam
Insegna Kotlin, ma più in generale tutti i meccanismi sintattici che un programmatore può trovare davanti in un qualsiasi linguaggio di programmazione; grazie alla sintassi molto semplice del linguaggio si possono comprendere i concetti base senza perdersi in dettagli legati al linguaggio usato; per molti è stato utile per chiarire concetti sulla programmazione concorrente e parallela.

Infine, per quanto riguarda il refactoring, ce ne sono almeno due consigliati:

Refactoring: Improving the Design of Existing Code Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts e Patterns of Enterprise Application ArchitectureMartin Fowler 
Non poteva mancare un riferimento per il refactoring, e che cosa se non le opere di Martin Fowler? Sacro dono per lavorare sul codice legacy (il 90% dei casi per il programmatore junior), questi sono “i” libri sul refactoring 


Sei d’accordo con questi consigli? Hai anche tu un libro da aggiungere alla nostra lista, che è stato fondamentale per muovere i primi passi nella programmazione oppure perché ogni tanto vai a rileggerlo?
Segnalacelo sui nostri social oppure scrivi un email alla redazione Develer!