Agile Software Development, Principles, Patterns, and Practices 1/e / Edition 1by Robert C. Martin
Written by a software developer for software developers, this book is a unique collection of the latest software development methods. The author includes OOD, UML, Design Patterns, Agile and XP methods with a detailed description of a complete software design for reusable programs in C++ and Java. Using a practical, problem-solving approach, it shows how to/i>… See more details below
Written by a software developer for software developers, this book is a unique collection of the latest software development methods. The author includes OOD, UML, Design Patterns, Agile and XP methods with a detailed description of a complete software design for reusable programs in C++ and Java. Using a practical, problem-solving approach, it shows how to develop an object-oriented application—from the early stages of analysis, through the low-level design and into the implementation. Walks readers through the designer's thoughts — showing the errors, blind alleys, and creative insights that occur throughout the software design process. The book covers: Statics and Dynamics; Principles of Class Design; Complexity Management; Principles of Package Design; Analysis and Design; Patterns and Paradigm Crossings. Explains the principles of OOD, one by one, and then demonstrates them with numerous examples, completely worked-through designs, and case studies. Covers traps, pitfalls, and work arounds in the application of C++ and OOD and then shows how Agile methods can be used. Discusses the methods for designing and developing big software in detail. Features a three-chapter, in-depth, single case study of a building security system. For Software Engineers, Programmers, and Analysts who want to understand how to design object oriented software with state of the art methods.
- Publication date:
- Edition description:
- Sales rank:
- Product dimensions:
- 8.00(w) x 10.00(h) x 1.90(d)
Table of Contents
I. AGILE DEVELOPMENT.
1. Agile Practices.
2. Overview of Extreme Programming.
6. A Programming Episode.
II. AGILE DESIGN.
7. What Is Agile Design?
8. SRP: The Single-Responsibility Principle.
9. OCP: The Open-Closed Principle.
10. LSP: The Liskov Substitution Principle.
11. DIP: The Dependency-Inversion Principle.
12. ISP: The Interface-Segregation Principle.
III. THE PAYROLL CASE STUDY.
13. Command and Active Object.
14. Template Method & Strategy: Inheritance vs. Delegation.
15. Facade and Mediator.
16. Singleton and Monostate.
17. Null Object.
18. The Payroll Case Study: Iteration One Begins.
19. The Payroll Case Study: Implementation.
IV. PACKAGING THE PAYROLL SYSTEM.
20. Principles of Package Design.
22. The Payroll Case Study (Part 2).
V. THE WEATHER STATION CASE STUDY.
24. Observer—Backing into a Pattern.
25. Abstract Server, Adapter, and Bridge.
26. Proxy and Stairway to Heaven: Managing Third Party APIs.
27. Case Study: Weather Station.
VI. THE ETS CASE STUDY.
30. The ETS Framework.
Appendix A. UML Notation I: The CGI Example.
Appendix B. UML Notation II: The Statmux.
Appendix C. A Satire of Two Companies.
Appendix D. The Source Code Is the Design.
and post it to your social network
Most Helpful Customer Reviews
See all customer reviews >