第一图书网

软件预构艺术

Ken Pugh 东南大学
出版时间:

2006-5  

出版社:

东南大学  

作者:

Ken Pugh  

页数:

220  

Tag标签:

无  

内容概要

利用经验累积而得的洞察力开发新的解决方案被称为预构。透过重构而获得的专业知识也属于这类经验,而预构的词源即重构。重构是修改程序或软件系统内部结构的实践,以此在保留其现有行为的基础上改良设计。重构的原因有多种:方便后期增加功能、提高可维护性、提升性能。 本书作者是经验老道的软件开发人员。书中,作者运用他个人和其他众多开发人员的丰富经验,展示由其推衍而得的各项实践方针。这些方针把优秀的开发人员在设计时隐而未显的考虑细节如实地呈现出来。许多方针都围绕着极致抽象化、极致隔离以及极致可读性这几个概念。在假想的软件项目和实际项目的介绍中,作者把实践方针呈现在读者面前。其中几条于稍后列出。 把作者的方针应用到你的软件项目,有助于写出可读性、可维护性更棒的程序。这些方针可以协助你前期决策,以减少后期重构的工作量。在这样的前提下,你可以预测未来,减少修改。简言之,就是程序预构会使你更有效率。

作者简介

Ken Pugh是Puge-Killen协会主席之一。Ken担任顾问、从事教育培训、担任教师以及出庭提供证词,涉足的科技领域有面向对象设计、Linux/unix、网络以及系统开发实践。他参与过的项目包括山羊血清流程控制、担保抵押处理软件以及摄影分级。Ken时常在全国会议和区域会议发表演讲,从伦敦到悉尼都有他的客户。不工作时,他喜欢滑雪、冲浪、骑自行车以及到阿帕拉契山径徒步旅行。

书籍目录

PREFACE1 INTRODUCTION TO PREFACTORING What Is Prefactoring? The Three Extremes The Guidelines Explored The Context for This Book2 THE SYSTEM IN SO MANY WORDS Meet Sam Reinvention Avoidance What's in a Name? Splitters Versus Lumpers Clumping Abstracting Prototypes Are Worth a Thousand Words3 GENERAL DEVELOPMENT ISSUES Start with the Big Picture Interface Contracts Validation Code Communicates Consistency Is Simplicity A Prefactoring Attitude Don't Repeat Yourself Documentation of Assumptions and Decisions Dealing with Deuiations and Errors Speeding The Spreadsheet Conundrum Tools Are Tools--Use Them Wisely4 GETTING THE BIG PICTURE The Rest of the Story Process The Initial Design Global Planning, Local Designing Testing Functionality Testing quality Security5 GOT CLASS ? Categories and Classes Declaration Versus Execution Appropriate Inheritance Communicate withext More Than One6 A FEW WORDS ON CLASSES Honor the Class Maxims Three Laws of Objects Need Determines Class Polymorphism One Little.lob Policy Versus Implementation Extreme Naming Overloading Functions7 GETTING THERE Where We Are Separating Concerns Migrating to the New System8 THE FIRSTRELEASE The Proof Is in the Puddin.~ Relrospective Time The System as It Stands Now Operations Interface Abstract Data Types Configuration Testing Dealing with Deuiations and Errors A Little Prefactofing The First Released Iteration Sometimes Practice Does Not Match Theory The Rest of the Classes9 ASSOCIATIONS AND STATES Sam's Neuw Requirement Who's in Charge? The State of an Object10 INTERFACES AND ADAPTATION The Catalog Search Use Case Designinn the Interface Interface Development Interface Testing Interface Splitting Something Worlking11 ZIP CODES AND INTERFACES Adaptation Pass the Buck Unwritten Code Indirection Logging Paradigm Mismatch12 MORE REPORTS Fancy Reports Change Happens Exports13 INVOICES, CREDIT CARDS, AND DISCOUNTS The Next Step The Language of the Client Security and Priuacy14 SAM IS EXPANDING The Second Store A New Development The Third Store Goodbye Sam Generality15 A PRINTSERVER EXAMPLE Introduction The System The Message Testing Logging Still More Separation Epilogue]6 ANTISPAM EXAMPLE The Context Spare Checking The ReceivingMailServer ReceivedMailExaminer The Full Flow17 EPILOGUEA GUIDELINES AND PRINCIPLESB SOURCE CODEINDEX


图书封面

图书标签Tags

广告

下载页面


软件预构艺术 PDF格式下载



我们都在coding,我们都在re-factoring,,那么在coding和re-factoring之间我们应该干什么?这本书的视角独特,可细看进去,我们要做要注意的其实还是那些事情.


视角不错!不愧获得06Jolt震撼大奖!把研发项目中客户的参与很形象地表达出来,英语表达清楚简练,案例规模适中,很多经验总结得简要、清楚!在自然而然中,道出了软件设计研发的要义。


pre-factoring理解为重构的反义词就可以了。老美就是喜欢造新词


相关图书