
Agile Software Development, Principles, Patterns, and Practices
by Robert C. Martin · first published 2002
10mentions
7recommended by
10HN commenters
2008–2023first – last mentioned
70% recommend20% neutral10% critical
Why HN recommends it
Java walkthrough of object-oriented design principles such as SOLID, with worked examples of applying them. Useful for improving OO design skills and seeing principles in practice, even for non-Java developers.
Summarised by Claude from recommending comments
Affiliate links. As an Amazon Associate I earn from qualifying purchases.



…or you want to see some example of applying it in software/Web development with PHP/Java/RoR/... From my experience, I found helpful next books: "Test Driven Development: By Example" by Kent Beck "Agile Software Development, Principles, Patterns, and Practices" by Robert C. Martin "Agile and Iterative Development: A Manager's Guide" by Craig Larman "Agile Project Management with Scrum" by Ken Schwaber "Agile Software Development Ecosystems" by Jim Highsmith…
on “Ask YC: Good agile book?” ↗Robert C Martin - Agile Software Development: Principles, Patterns, and Practices There's now an updated version of this book for C# but the first one deals with C++. This book explains, in details, how to architecture your application around use cases. "Game Coding Complete 5" also…
on “Generic programming to fight the rigidity in the C++ projects” ↗Agile Software Development, Principles, Patterns, and Practices - by Uncle Bob Martin One of the most influential programming books I've ever read. The code is in Java, but it's east to follow even for a non-Java developer, and the truths are universal. Learn the…
on “Ask HN: What language-agnostic programming books should I read?” ↗…circuit I would start with the simulator code, introducing abstractions for components only if it would help the simulator. I liked the demonstration of this approach in Chapter 6 of Robert C. Martin’s Agile Software Development: Principles, Patterns and Practices. It’s available online here: https://people.scs.carleton.ca/~jeanpier//Fall2021/Topic%201...
on “Day 20: My favourite problem from Advent of Code 2023” ↗…display, on PC with minifb, as a websevice and with mocks in unit tests. I think it's preferable to always aim for loose coupling to enable testing, easier developing and later change. In that respective "Agile Software Development, Principles, Patterns, and Practices" is a much better old school programming book than "Design Patterns" imao (given the latter one is a decade older and the Gang could not have known) Languages that make thight coupling harder definitely…
on “Rome will be written in Rust” ↗Known to whom, exactly? I know him only through his books; I've read _Clean Code_ and _Agile Software Development: Principles, Patterns, and Practices_. They're both excellent. I'd happily recommend either one to someone wanting to improve their object-oriented design skills.
on “Taking Uncle Bob to school” ↗I first encountered him with this book: Designing object-oriented C++ applications using the Booch method and really liked: Agile Software Development: Principles, Patterns and Practices. I didn't think Clean Code was worth it though.
on “Hordes Of Novices” ↗I agree with Joel's position wholeheartedly. I've read Robert Martin's book "Agile Software Development, Principles, Patterns, and Practices". Referring to the book, which demonstrates the SOLID principles, it's not that you can't do it that way and be successful, it's that a pure object oriented approach is not necessarily the best approach…
on “Uncle Bob's rant on Jeff and Joel” ↗…Fowler, and Kent Beck, it seems to me that they all agree: testing is good, test-driven design can be bad, and mocking everything is bad [2][3]. I took some time last week to re-read Uncle Bob's book, Agile Software Development, Principles, Patterns, and Practices [4], and Kent Beck's book on TDD [5]. There was a huge difference: Uncle Bob focuses on test-driven design, while Kent Beck focuses on test-driven development. Uncle Bob claims that test-driven development…
on “The DHH Problem” ↗…lmgtfy: http://en.wikipedia.org/wiki/Robert_Cecil_Martin "In 2001, he initiated the meeting of the group that created Agile software development [...] From 1996 to 1999 he was the editor-in-chief of the C++ Report. In 2002 he wrote Agile Software Development: Principles, Patterns, and Practices".
on “Uncle Bob Denied Entry To UK” ↗