Prefactoring : extreme abstraction, extreme separation, extreme readability = 软件预构艺术 /

副标题:无

作   者:Ken Pugh.

分类号:

ISBN:9787564103651

微信扫一扫,移动浏览光盘

简介

  利用经验累积而得的洞察力开发新的解决方案被称为预构。透过重构而获得的专业知识也属于这类经验,而预构的词源即重构。重构是修改程序或软件系统内部结构的实践,以此在保留其现有行为的基础上改良设计。重构的原因有多种:方便后期增加功能、提高可维护性、提升性能。    本书作者是经验老道的软件开发人员。书中,作者运用他个人和其他众多开发人员的丰富经验,展示由其推衍而得的各项实践方针。这些方针把优秀的开发人员在设计时隐而未显的考虑细节如实地呈现出来。许多方针都围绕着极致抽象化、极致隔离以及极致可读性这几个概念。在假想的软件项目和实际项目的介绍中,作者把实践方针呈现在读者面前。其中几条于稍后列出。    把作者的方针应用到你的软件项目,有助于写出可读性、可维护性更棒的程序。这些方针可以协助你前期决策,以减少后期重构的工作量。在这样的前提下,你可以预测未来,减少修改。简言之,就是程序预构会使你更有效率。       * 要抽象,就彻底抽象    * 整合小块要比分拆大块容易    * 做好小差事,就能常受重用    * 全局计划,局部开发    * 让你的程序能够沟通    * 最容易调试的程序是还没写的程序    * 使用客户的语言    * 不要让冷气进来    * 绝不沉默    * 不要加速,直到你知道要去哪儿

目录

PREFACE
1 INTRODUCTION TO PREFACTORING
What Is Prefactoring?
The Three Extremes
The Guidelines Explored
The Context for This Book
2 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 Words
3 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 Wisely
4 GETTING THE BIG PICTURE
The Rest of the Story
Process
The Initial Design
Global Planning, Local Designing
Testing Functionality
Testing quality
Security
5 GOT CLASS ?
Categories and Classes
Declaration Versus Execution
Appropriate Inheritance
Communicate withext
More Than One
6 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 Functions
7 GETTING THERE
Where We Are
Separating Concerns
Migrating to the New System
8 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 Classes
9 ASSOCIATIONS AND STATES
Sam''s Neuw Requirement
Who''s in Charge?
The State of an Object
10 INTERFACES AND ADAPTATION
The Catalog Search Use Case
Designinn the Interface
Interface Development
Interface Testing
Interface Splitting
Something Worlking
11 ZIP CODES AND INTERFACES
Adaptation
Pass the Buck
Unwritten Code
Indirection
Logging
Paradigm Mismatch
12 MORE REPORTS
Fancy Reports
Change Happens
Exports
13 INVOICES, CREDIT CARDS, AND DISCOUNTS
The Next Step
The Language of the Client
Security and Priuacy
14 SAM IS EXPANDING
The Second Store
A New Development
The Third Store
Goodbye Sam
Generality
15 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 Flow
17 EPILOGUE
A GUIDELINES AND PRINCIPLES
B SOURCE CODE
INDEX

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Prefactoring : extreme abstraction, extreme separation, extreme readability = 软件预构艺术 /
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon