
Title | : | Agile Software Development, Principles, Patterns, and Practices |
Author | : | |
Rating | : | |
ISBN | : | 0135974445 |
ISBN-10 | : | 9780135974445 |
Language | : | English |
Format Type | : | Hardcover |
Number of Pages | : | 552 |
Publication | : | First published October 25, 2002 |
Agile Software Development, Principles, Patterns, and Practices Reviews
-
This book covers a great deal of material: Martin talks about the basic practices of agile software development, the principles of good object-oriented design, and common OO design patterns.
This book is, in my opinion, a career-changer. Having a single book that teaches what it essentially means to move from being a programmer to a real software craftsman is invaluable. I'd recommend this for any experienced programmer who wants to transition to a more professional approach to writing high quality, maintainable code.
In this book, Martin avoids a problem that plagued Clean Code - most of the code examples here are short, making it less problematic that they lack any kind of formatting to aid readability. My main problem with the book was that I personally don't think C++ code ever "looks" good, so examples that illustrated how to clean C++ code weren't as impactful for me as the Java examples. I think I would have preferred the C-based code to be in C# instead.
Overall, this is an excellent book that really helped me grow into a software craftsman. Occasionally, some of the code examples drag on a bit long, and occasionally the examples look overengineered (a common problem when using code short enough to illustrate a single thing), but the book is so good otherwise that it's worth slogging through the occasional rough patches. -
A must-read for developers willing to build maintainable, testable and scalable software. It teaches you the basics for agile "software development", TDD, SOLID principles, design patterns and much more. Also, you really need to try out the patterns and practices presented in this book so you can feel how it is to create a "Clean Architecture". On the other hand, the reader might need some programming experience before trying to understand all the reasons and solutions proposed in this book.
-
بلاخره تموم شد! یک انتخاب نادرست برای این زمان! یک کتاب سخت خوان و انگیزه کم کن، حداقل برای کسی مثل من که هنوز در ابتدای راه دیزاین هست. اصلا توصیه نمی کنم اگر هنوز به درک نسبتا خوبی از مفاهیم پایه نرسیدید این کتاب رو بخونید. چون به نظرم سخت نوشته شده و خسته و گیجتون می کنه. بعدها، شاید وقتی مفاهیم برام بیشتر جا افتاد، به عنوان یک کتاب که از تجارب واقعی نوشته شده، باز این کتاب رو بخونم.
-
The first chapters of the book explain a little bit about Agile and its methodologies, practices, and background. The subsequences are all about reviews of refactoring, design patterns, testing, and related stuff. Also, there are some study cases at the end of each topic.
Even though this book is not a breakthrough--there isn't something new--but the depth of the reviews makes the book worth reading. You'll recall many topics like Refactoring, XP, TTD, etc etc. You'll learn it more deeply because the author gives different perspectives on how to use certain techniques.
What bothers me a lot about this book is the author's word selection. Bob is a Sesquipedalian: he likes using big words. Some selections cause the book to be unreadable.
Also, some explanations are just too shallow. Sometimes, the author likes to assume that the readers have an understanding of the prerequisites, so he didn't give so much time explaining it or explaining it in a vague way. This is frustrating. I had to skip two case studies because of their lack of explanations. I'd tried it hard, seriously, but I don't think I would ever understand with that level of unclarity. -
I've read up this book up to the Packaging the Payroll System, right before starting the ETS Study Case. The reason for this abandon is that this book is very large (at least for me, a novice in reading technical books).
It is a great book for learning Design Patterns. Also, it is a nice read as the author has a good sense of humor, and inserts funny stuff here and there. -
It’s a bit dated but the book provides a lot of useful information on making software projects successful. It’s the kind of book I wish I read a long time ago at the beginning of my career. Still, it’s valuable to revisit these concepts once in a while.
I would categorize this book as recommended reading for budding software engineers. -
Excelent book. Every developer must read this book, at least, once in your professional life. It hasn't just talking about design patterns, but how to get there and when and if makes sense. Give you a critical vision about design patterns, refactoring, TDD and process development.
-
Nice explanation of SOLID principles. Some of the stuff is outdated but conveys the message good enough
-
The first few chapters until SOLID and design patterns are more relevant to Agile.
-
Clench your teeth or you will not finish this magnificent piece of art. It's packed with C++ and Java snippets, UMLs, case studies, etc. It's more like having a job than reading a book.
-
It was big changer in my career. It teached me how to be a developer. Not just a coder.
-
I need to reread it. Several times.
-
Pretty much a bible on Agile development and design including the "SOLID" principles. The examples on design patterns are also well written, with much detail going into the evolution of the patterns. The author tends to work from first principles while designing, so it mimicks real life development and is a good reference point for the inexperience developer. I docked one point because some of the code examples (especially, the code walkthrough chapters) were way too long-winded and some of the design pattern chapters could have been easily condensed to 50% of their length while not removing much of the core content.
-
Having finished this book for the second time, I am struck by what a profound influence the material contained has had on my career. Quite simply this is the very best book on programming I have ever read. If you can follow the SOLID principles contained within you will write high quality, compact and maintainable code.
I am currently encouraging a group of about 20 developers to study this book and share their experiences -
Some of the code examples are dated in the late 2000s/early 2010s, but the concepts are rock solid. The chapters on software packaging and calculating package metrics with the Main Sequence and Stable Abstraction Principle is a fairly significant, under-researched contribution to the software engineering research space. Worth a read,cover-to-cover.
-
One of the best books on design principles. The source for SOLID design design principles. Robert Martin takes the focus away from notation and focusses on design problems - the most important one of achieving loose coupling - required for any scalable and extensible system.
I found it a great source for some of my training programs on object-oriented design.