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.
......(更多)
......(更多)
......(更多)
唯一能够加快进度的方法便是缩减范围。不要经受不住诱惑盲目冲刺。 在程序员所能表现的各种不专业行为中,最糟糕的是明知道还没有完成任务却宣称已经完成
敏捷开发人员知道要做什么,是因为: (1) 他们遵循敏捷实践去发现问题 (2) 他们应用设计原则去诊断问题;并且 (3) 他们应用适当的设计模式去解决问题。 软件开发的这三个方面间得相互作用就是设计。
......(更多)