Semua buku itu tampak sangat, sangat, sangat tua. Tidakkah Anda pikir ada perbedaan antara saat ini dan ketika buku itu ditulis?
IMHO, tidak mengherankan bahwa buku-buku yang sangat bagus tetap populer selama beberapa dekade - yang menunjukkan betapa baiknya buku-buku itu. Tetapi saya pikir saya dapat memberi tahu Anda sesuatu untuk setiap kandidat yang Anda daftarkan:
Code complete: 2nd edition = may, 2004
Sebenarnya edisi pertama "Kode selesai" berasal dari tahun 1993, jadi ini benar-benar "klasik". Ini adalah tentang gaya pengkodean dasar, menggunakan contoh-contoh yang berlaku untuk hampir setiap bahasa pemrograman keluarga C, yang berisi bahasa paling populer saat ini (C / C ++ / Java / C # / Objective-C / D / ...). Jadi ya, buku ini terbaru.
Introduction to algorithms (Cormen, Leiserson, Rivest, Stein)
Yah, saya sebenarnya tidak membaca buku itu (buku teks algoritma saya berasal dari "Sedgewick"), tetapi mempelajari algoritma dan konstruksi algoritma adalah bahasa agnostik. Tentu saja, kerajinan ini semakin diremehkan beberapa tahun terakhir karena Anda menemukan banyak algoritma dasar saat ini di perpustakaan standar, tetapi IMHO setiap programmer profesional harus memiliki pengetahuan dasar dalam bidang ini.
The Pragmatic Programmer
Ini adalah buku yang sangat bagus tentang pemrograman sebagai keahlian. Bahasa agnostik dan sangat, sangat terkini, selama pemrograman dilakukan oleh programmer sebagai tugas manual, menggunakan editor teks, IDE, kontrol versi dll.
Structure and Interpretation of Computer Programs: = September 1, 1996
Ini adalah favorit pribadi saya, walaupun (atau mungkin karena) buku ini menggunakan Skema untuk mengajarkan Anda perbedaan antara paradigma pemrograman yang berbeda. Saya tidak tahu buku apa pun yang memiliki fokus kuat untuk membangun abstraksi. Dan membangun abstraksi adalah kemampuan utama yang membuat perbedaan antara seorang programmer yang biasa-biasa saja dan seorang programmer top - yang tidak berubah dalam dekade terakhir, jadi sungguh, buku ini abadi. Selain itu, bahasa fungsional dan elemen bahasa menjadi lebih populer baru-baru ini, jadi IMHO ide-ide yang disajikan dalam buku ini mendapat kebangkitan.
The C Programming Language
Yah, buku ini mungkin tidak begitu abadi seperti empat lainnya. Tetapi karena C adalah sesuatu seperti "ibu" dari semua bahasa populer yang saya sebutkan di atas, mungkin ide yang baik untuk membaca buku ini juga - saya tidak berpikir ada beberapa buku "C" modern yang benar-benar lebih baik. Dan jika Anda harus melakukan pemrograman pemeliharaan kode C ++ yang ditulis oleh seseorang yang tahu C lebih baik daripada C ++, maka buku ini adalah suatu keharusan.
Akhirnya, Anda meminta buku yang memperhitungkan lebih dari "realitas saat ini", tanpa terlalu spesifik teknologi. Jadi apa "realitas saat ini" dan apa yang telah berubah di sisi "non-teknologi"? Berikut adalah beberapa poin dari dekade terakhir, tanpa mengatakan bahwa daftar ini lengkap atau memiliki prioritas yang tepat.
- Ada lebih banyak kode warisan (terutama lebih banyak kode warisan tidak hanya di Fortran dan Cobol, tetapi juga di C ++ dan Jawa).
- Unit testing dan TDD menjadi lebih favorit.
- Ada lebih banyak kode sumber terbuka yang tersedia.
- OO mendapat semakin banyak kritik
(Saya tidak mencantumkan apa pun di sini tentang pengembangan Web atau Aplikasi, karena menurut saya teknologi ini spesifik).
Ada buku bagus untuk topik 1 dan 2, terutama "Kode Bersih" , yang berasal dari 2008, dan "Bekerja secara efektif dengan kode warisan" dari 2004. Mungkin itu beberapa buku "baru" yang Anda cari?