軟件開發工程是有趣的、多產的,甚至是大膽的。同時,它也能源源不斷地帶來商業價值,并保持在我們的掌控之下。 極限編程(XP)的構思和發展是針對小型團隊進行軟件開發時,在面對不確知的、變化的需求時所產生的特定需要的。這一新的、輕量級的方法學對許多傳統思維提出了挑戰,這其中包括一個一直以來的假設,即在軟件開發過程中,對軟件進行一個小小的改動就必然會使其開發成本大大增加。極限編程認可軟件開發工程應該節約成本,而且一旦實現了某種節約就應該加以開發利用。 你可以喜歡XP,也可以恨它,但是本書將會使你對如何開發軟件有一個全新的認識。KentBeck擁有并經營著First Class軟件公司,在這里他把主要精力放在兩個最大的興趣上——模式和極限編程。他一直在研究軟件開發的先驅模式、CRC卡、HotDraw畫圖編輯器框架、xUnit單元測試框架以及測試為先的編程。他發表了五十多篇關于編程的文章,并出版了《The Smalltalk Best Practice Patterns》(Prentice-Hall出版社)和《Kent Beck’s Guide to Better Smalltalk:A Sorted Collection》(劍橋大學出版社)兩本著作,同時他還是超級暢銷書《重構——改善既有代碼的設計》(中英文版皆由中國電力出版社出版)的特約撰稿人。
Patterns of Enterprise Application Architecture is written in direct response to the stiff challenges that face enterprise application developers. The author, noted object-oriented designer Martin Fowler, noticed that despite changes in technology--from Smalltalk to CORBA to Java to .NET--the same basic design ideas can be adapted and applied to solve common problems. With the help of an expert group of contributors, Martin distills over forty recurring solutions into patterns. The result is an indispensable handbook of solutions that are applicable to any enterprise application platform
DESIGN PATTERNS JAVA COMPANION
Design patterns began to be recognized more formally in the early
1990s by Helm (1990) and Erich Gamma (1992), who described patterns
incorporated in the GUI application framework, ET++. The culmination of
these discussions and a number of technical meetings was the publication of
the parent book in this series, Design Patterns -- Elements of Reusable
Software, by Gamma, Helm, Johnson and Vlissides.(1995). This book,
commonly referred to as the Gang of Four or “GoF” book, has had a powerful
impact on those seeking to understand how to use design patterns and has
become an all-time best seller. We will refer to this groundbreaking book as
Design Patterns, throughout this book and The Design Patterns Smalltalk
Companion (Alpert, Brown and Woolf, 1998) as the Smalltalk Companion.
Java technology is both a programming language and a platform. The Java programming language originated as part of a research project to develop advanced software for a wide variety of network devices and embedded systems. The goal was to develop a small, reliable, portable, distributed, real-time operating platform. When the project started, C++ was the language of choice. But over time the difficulties encountered with C++ grew to the point where the problems could best be addressed by creating an entirely new language platform. Design and architecture decisions drew from a variety of languages such as Eiffel, Smalltalk, Objective C, and Cedar/Mesa. The result is a language platform that has proven ideal for developing secure, distributed, network-based end-user applications in environments ranging from network-embedded devices to the World-Wide Web and the desktop