Tutti quei libri sembrano molto, molto, molto vecchi. Non pensi che ci sia differenza tra oggi e quando quei libri sono stati scritti?
IMHO non è una sorpresa che i libri molto buoni rimangano popolari per decenni - questo dimostra quanto siano bravi. Ma penso di poterti dire qualcosa per ciascuno dei candidati che hai elencato:
Code complete: 2nd edition = may, 2004
In realtà la prima edizione di "Codice completo" è stata del 1993, quindi questa è davvero un "classico". Riguarda lo stile di codifica di base, usando esempi che si applicano a quasi tutti i linguaggi di programmazione della famiglia C, che contiene i linguaggi più popolari al giorno d'oggi (C / C ++ / Java / C # / Objective-C / D / ...). Quindi sì, questo libro è aggiornato.
Introduction to algorithms (Cormen, Leiserson, Rivest, Stein)
Bene, in realtà non ho letto quel libro (il mio libro di testo sugli algoritmi era di "Sedgewick"), ma l'apprendimento di algoritmi e la costruzione di algoritmi è in realtà un linguaggio agnostico. Certo, questo mestiere sta diventando un po 'sottovalutato negli ultimi anni da quando trovi oggi molti algoritmi di base nelle librerie standard, ma IMHO ogni programmatore professionista dovrebbe avere alcune conoscenze di base in questo campo.
The Pragmatic Programmer
Questo è un ottimo libro sulla programmazione come arte. Linguaggio agnostico e molto, molto aggiornato, purché la programmazione venga eseguita dai programmatori come attività manuale, utilizzando editor di testo, IDE, controllo della versione ecc.
Structure and Interpretation of Computer Programs: = September 1, 1996
Questo è il mio preferito, anche se (o forse perché) il libro usa Scheme per insegnarti le differenze tra i diversi paradigmi di programmazione. Non conosco nessun altro libro che si concentri così tanto sulla costruzione di astrazioni. E costruire astrazioni è un'abilità chiave che fa la differenza tra un programmatore mediocre e un programmatore di spicco - che non è cambiato negli ultimi decenni, quindi in realtà questo libro è senza tempo. Inoltre, i linguaggi funzionali e gli elementi linguistici sono diventati più popolari di recente, quindi le idee presentate in questo libro hanno avuto una rinascita.
The C Programming Language
Bene, questo libro potrebbe non essere così senza tempo come gli altri quattro. Ma dato che C è qualcosa di simile alla "madre" di tutte quelle lingue popolari che ho elencato sopra, potrebbe essere una buona idea leggere questo libro - non penso che ci siano dei moderni libri a "C" che sono davvero migliori. E se devi programmare la manutenzione del codice C ++ che è stato scritto da qualcuno che conosceva meglio C del C ++, allora questo libro è un must.
Infine, stavi chiedendo libri che tengano maggiormente conto della "realtà attuale", senza essere troppo specifici per la tecnologia. Allora, qual è la "realtà attuale" e cosa è cambiato dal lato "non tecnologico"? Ecco alcuni punti dell'ultimo decennio, senza dire che questo elenco è completo o con le giuste priorità.
- Esistono più codici legacy (soprattutto più codice legacy non solo in Fortran e Cobol, ma anche in C ++ e Java).
- Test unitari e TDD sono diventati i preferiti.
- C'è molto più codice open source disponibile.
- OO ha ottenuto sempre più critici
(Non elencherò qui nulla sullo sviluppo di Web o App, perché penso che questa tecnologia sia specifica).
Esistono buoni libri per gli argomenti 1 e 2, in particolare "Clean Code" , che è del 2008, e "Lavorare efficacemente con il codice legacy" del 2004. Forse questi sono alcuni dei "nuovi" libri che stai cercando?