Buku-buku ini mencakup praktik membangun perangkat lunak dunia nyata - dari kode bersih dan pola desain hingga arsitektur sistem dan keterampilan lunak bekerja dalam tim.
Kualitas Kode dan Kerajinan
Buku tentang menulis kode yang bersih dan dapat dipelihara.
| Buku | Pengarang | Tahun | Tingkat | Deskripsi |
|---|---|---|---|---|
| Clean Code Prentice Hall | Robert C. Martin | 2008 | Beginner-Intermediate | Buku yang paling berpengaruh tentang kerajinan di tingkat kode. Terkadang kontroversial tetapi bacaan yang penting. |
| Code Complete Edisi ke-2, Microsoft Press | Steve McConnell | 2004 | Intermediate | Panduan paling komprehensif tentang praktik konstruksi perangkat lunak. |
| The Pragmatic Programmer Edisi Ulang Tahun ke-20, Addison-Wesley | David Thomas, Andrew Hunt | 2019 | Beginner-Intermediate | Kebijaksanaan yang disaring dari pengembang berpengalaman. Bacaan yang wajib bagi insinyur perangkat lunak baru. |
| A Philosophy of Software Design Edisi ke-2, Yaknyam | John Ousterhout | 2021 | Intermediate | Pandangan mendalam profesor Stanford Ousterhout tentang kompleksitas dan desain. |
Pola Desain dan Arsitektur
Pola desain perangkat lunak dan prinsip arsitektur.
| Buku | Pengarang | Tahun | Tingkat | Deskripsi |
|---|---|---|---|---|
| Design Patterns: Elements of Reusable Object-Oriented Software Addison-Wesley | Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides | 1994 | Intermediate-Advanced | Buku 'Gang of Four' (GoF) - katalog pola desain asli. |
| Patterns of Enterprise Application Architecture Addison-Wesley | Martin Fowler | 2002 | Advanced | Katalog pola enterprise Fowler untuk pemodelan data dan domain. |
| Clean Architecture Prentice Hall | Robert C. Martin | 2017 | Intermediate | Pandangan Uncle Bob tentang prinsip arsitektur perangkat lunak. |
| Domain-Driven Design Addison-Wesley | Eric Evans | 2003 | Advanced | Alkitab DDD - desain strategis untuk domain bisnis yang kompleks. |
Pengujian dan Refactoring
Pengembangan berbasis pengujian, strategi pengujian, dan refactoring.
| Buku | Pengarang | Tahun | Tingkat | Deskripsi |
|---|---|---|---|---|
| Refactoring: Improving the Design of Existing Code Edisi ke-2, Addison-Wesley | Martin Fowler | 2018 | Intermediate | Katalog refactoring definitif. Penting untuk memelihara kode warisan. |
| Working Effectively with Legacy Code Prentice Hall | Michael Feathers | 2004 | Intermediate-Advanced | Panduan yang tidak tergantikan untuk mengatasi basis kode warisan yang tidak teruji. |
| Test-Driven Development: By Example Addison-Wesley | Kent Beck | 2002 | Intermediate | TDD dari penciptanya. Pendek, mudah dibaca, dan berpengaruh. |
| xUnit Test Patterns Addison-Wesley | Gerard Meszaros | 2007 | Advanced | Katalog komprehensif pola pengujian dan anti-pola. |
Desain Sistem dan Sistem Terdistribusi
Sistem berskala besar, arsitektur terdistribusi, dan kinerja.
| Buku | Pengarang | Tahun | Tingkat | Deskripsi |
|---|---|---|---|---|
| Designing Data-Intensive Applications O'Reilly | Martin Kleppmann | 2017 | Intermediate-Advanced | Buku modern terbaik tentang sistem data dan desain sistem terdistribusi. Bacaan yang wajib bagi insinyur backend. |
| Site Reliability Engineering O'Reilly | Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Richard Murphy (Eds.) | 2016 | Intermediate | Pendekatan Google untuk menjalankan sistem produksi dalam skala besar. Gratis online. |
| Release It! Edisi ke-2, Pragmatic Bookshelf | Michael T. Nygard | 2018 | Intermediate | Pola untuk perangkat lunak siap produksi termasuk pemutus sirkuit dan sekat. |
Proses, Tim, dan Karir
Proses pengembangan perangkat lunak, manajemen, dan keterampilan lunak.
| Buku | Pengarang | Tahun | Tingkat | Deskripsi |
|---|---|---|---|---|
| The Mythical Man-Month Edisi Ulang Tahun, Addison-Wesley | Frederick P. Brooks Jr. | 1995 | Intermediate | Esai klasik Brooks tentang manajemen proyek perangkat lunak. Masih relevan seperti saat diterbitkan pada tahun 1975. |
| Peopleware: Productive Projects and Teams Edisi ke-3, Addison-Wesley | Tom DeMarco, Timothy Lister | 2013 | Intermediate | Buku dasar tentang sisi manusia dari pengembangan perangkat lunak. |
| Accelerate IT Revolution Press | Nicole Forsgren, Jez Humble, Gene Kim | 2018 | Intermediate | Penelitian berbasis data tentang apa yang membuat tim perangkat lunak berkinerja tinggi. |