You are not signed in. Sign in.

Share:

Category IT Books

Agile Software Development, Principles, Patterns, and Practices 1/e » (1st Edition)

Book cover image of Agile Software Development, Principles, Patterns, and Practices 1/e by Robert C. Martin

Authors: Robert C. Martin
ISBN-13: 9780135974445, ISBN-10: 0135974445
Format: Hardcover
Publisher: Prentice Hall
Date Published: October 2002
Edition: 1st Edition

Find Best Prices for This Book »

Author Biography: Robert C. Martin

ROBERT C. MARTIN is President of Object Mentor Inc. Martin and his team of software consultants use Object-Oriented Design, Patterns, UML, Agile Methodologies, and eXtreme Programming with worldwide clients. He is the author of the best-selling book Designing Object-Oriented C++ Applications Using the Booch Method (Prentice Hall, 1995), Chief Editor of, Pattern Languages of Program Design 3 (Addison Wesley, 1997), Editor of, More C++ Gems (Cambridge, 1999), and co-author of XP in Practice, with James Newkirk (Addison-Wesley, 2001). He was Editor in Chief of the C++ Report from 1996 to 1999. He is a featured speaker at international conferences and trade shows.

Book Synopsis

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.

Table of Contents

Foreword
Preface
About the Authors
List of Design Patterns
Sect. 1Agile Development1
Ch. 1Agile Practices3
Ch. 2Overview of Extreme Programming11
Ch. 3Planning19
Ch. 4Testing23
Ch. 5Refactoring31
Ch. 6A Programming Episode43
Sect. 2Agile Design85
Ch. 7What Is Agile Design?87
Ch. 8SRP: The Single-Responsibility Principle95
Ch. 9OCP: The Open-Closed Principle99
Ch. 10LSP: The Liskov Substitution Principle111
Ch. 11DIP: The Dependency-Inversion Principle127
Ch. 12ISP: The Interface-Segregation Principle135
Sect. 3The Payroll Case Study147
Ch. 13Command and Active Object151
Ch. 14Template Method & Strategy: Inheritance vs. Delegation161
Ch. 15Facade and Mediator173
Ch. 16Singleton and Monostate177
Ch. 17Null Object189
Ch. 18The Payroll Case Study: Iteration One Begins193
Ch. 19The Payroll Case Study: Implementation205
Sect. 4Packaging the Payroll System251
Ch. 20Principles of Package Design253
Ch. 21Factory269
Ch. 22The Payroll Case Study (Part 2)275
Sect. 5The Weather Station Case Study291
Ch. 23Composite293
Ch. 24Observer - Backing into a Pattern297
Ch. 25Abstract Server, Adapter, and Bridge317
Ch. 26Proxy and Stairway to Heaven: Managing Third Party APIs327
Ch. 27Case Study: Weather Station355
Sect. 6The ETS Case Study385
Ch. 28Visitor387
Ch. 29State419
Ch. 30The ETS Framework443
App. AUML Notation I: The CGI Example467
App. BUML Notation II: The STATMUX489
App. C: A Satire of Two Companies507
App. D: The Source Code Is the Design517
Index525

Subjects


 

 




No reviews. Submit yours!



Review this book.

We would like to know what you think about this book and publish your thoughts here! (top)

Your Review

  1. You may optionally give a title for this comment.

  2. Worst to best, 1 to 5, what would you rate this one?

  3. The actual content of your comment. No HTML nor whatsoever allowed.

  4. The author of this comment.

  5. 9 + 3 = ?

    Please answer the question by common sense.