基本信息·出版社:人民邮电出版社 ·页码:157 页 ·出版日期:2008年11月 ·ISBN:9787115187093 ·条形码:9787115187093 ·版本:第1版 ·装帧:平装 ...
商家名称 |
信用等级 |
购买信息 |
订购本书 |
|
 |
实现模式(英文版) |
 |
|
 |
实现模式(英文版) |
 |

基本信息·出版社:人民邮电出版社
·页码:157 页
·出版日期:2008年11月
·ISBN:9787115187093
·条形码:9787115187093
·版本:第1版
·装帧:平装
·开本:16
·正文语种:英语
·丛书名:典藏原版书苑
内容简介 《实现模式》(英文版)中,Kent Beck将自己多年形成的编程习惯以及阅读既有代码的体验凝练成了编程中的价值观、原则和77种实现模式。沟通、简单和灵活的价值观应当被所有开发人员所铭记,无时或忘。局部影响、最小化重复、将逻辑与数据捆绑等原则同样是通用性的指导思想,比价值观更贴近编程场景,在价值观和模式之间搭建了桥梁。在77个实现模式中,每一个模式都覆盖了编写简洁、清晰、易扩展、易维护的代码这一原则的某个方面。它们为日常的编程提供了丰富翔实的参考依据,并告诉大家这些代码如何为降低沟通成本和提高有效产出提供保障。..《实现模式》(英文版)适用于各个阶段的开发者群体,刚刚涉足软件开发领域的新人能够透过大师的眼睛来看待编程,了解编程的价值观与原则;而具有丰富经验的资深工程师则可以通过这些模式进行反思,探究成功实践背后的意义。把价值观、原则和开发实践结合之后,日常开发工作便会以崭新迷人的形式呈现在我们面前。
编辑推荐 在《实现模式》中,作者收集了77种模式,用于处理日常编程任务。编写可读性更高的代码。这个新的模式集合涵盖了开发中的诸多方面,包括类、状态、行为、方法、容器及框架等。图表、故事、示例和随笔的配合使用,使作者笔下的种种模式显得异彩纷呈,从中可以发现许多经受过实践检验的解决方案,小至变量命名,大到异常检查。
Kent BeCk,软件业中最具创新力、最富盛名的领袖之一。长期以来。他一直致力于挑战软件工程教条。推动模式、测试驱动开发以及极限编程等思想的应用和传播。他是Three RIvers Institute的创始人和董事,也是Agitar Software的成员。他在AddiSOll一WesIev出版了多《实现模式》(英文版)籍,其中包括Test-Development(中译版《测试驱动开发》)。以及与Cyrlthia Andres合著的EXtreme Programming,Explalined(中译版《解析极限编程》)。《实现模式》(英文版)包括以下内容:
·通过代码进行交流的重要性和隐藏在模式背后的思想;
·何时创建类,如何创建类,类又是怎样书写逻辑的;
·存储和获取状态的最佳实践;
·行为,即用于表述逻辑(包括可选执行路径)的模式;
·编写方法。为方法命名,以及对方法进行分解;
·选择和使用容器;
·实现模式在用于构建框架时的变体。
“Kent是用代码来沟通的大师,他的代码条分缕析,明晓清晰,如益友携手,如良师解惑,令人豁然开朗。”
——Erich Gamma,IBM杰出工程师
目录 Chapter1:Introduction。
TourGuide
AndNow
Chapter2:Patterns
Chapter3:ATheoryofProgramming
Values
Communication
Simplicity
Flexibility
Principles
LocalConsequences
MinimizeRepetition
LogicandDataTogether
Symmetry
DeclarativeExpression
RateofChange
Conclusion
Chapter4:Motivation
Chapter5:Class
Class
SimpleSuperclassName
QualifiedSubclassName
AbstractInterface
Interface
AbstractClass
VersionedInterface
ValueObject
Specialization
Subclass
Implementor
InnerClass
Instance-SpecificBehavior
Conditional
Delegation
PluggableSelector
AnonymousInnerClass
LibraryClass
Conclusion
Chapter6:State
State
Access
DirectAccess
IndirectAccess
CommonState
VariableState
ExtrinsicState
Variable
LocalVariable
Field
Parameter
CollectingParameter
OptionalParameter
VarArgs
ParameterObject
Constant
Role-SuggestingName
DeclaredType
Initialization
EagerInitialization
LazyInitialization
Conclusion
Chapter7:Behavior
ControlFlow
MainFlow
Message
ChoosingMessage
DoubleDispatch
Decomposing(Sequencing)Message.。
ReversingMessage
InvitingMessage
ExplainingMessage
ExceptionalFlow
GuardClause
Exception
CheckedExceptions
ExceptionPropagation
Conclusion
Chapter8:Methods
ComposedMethod
Intention-RevealingName
MethodVisibility
MethodObject
OverriddenMethod
OverloadedMethod
MethodReturnType
MethodComment
HelperMethod
DebugPrintMethod
Conversion
ConversionMethod
ConversionConstructor
Creation
CompleteConstructor
FactoryMethod
InternalFactory
CollectionAccessorMethod
BooleanSettingMethod
QueryMethod
EqualityMethod
GettingMethod
SettingMethod
SafeCopy
Conclusion
Chapter9:Collections
Metaphors
Issues
Interfaces
Array
Iterable
Collection
List
Set
SortedSet
Map
Implementations
Collection
List
Set
Map
Collections
Searching
Sorting
UnmodifiableCollections
Single-ElementCollections
EmptyCollections
ExtendingCollections
Conclusion
Chapter10:EvolvingFrameworks
ChangingFrameworkswithoutChangingApplications
IncompatibleUpgrades
EncouragingCompatibleChange
LibraryClass
Objects
Conclusion
AppendixA:PerformanceMeasurement
Example
API
Implementation
MethodTimer
CancelingOverhead
Tests
ComparingCollections
ComparingArrayListandLinkedList
ComparingSets
ComparingMaps
Conclusion
Bibliography
GeneralProgramming
Philosophy
Java
Index
……
序言 这是一本关于如何写好代码的书。。
如果你不认为写好代码是一件重要。困难并且有趣的事,请立即放下这《实现模式》。
什么是好的代码?可以工作的。性能良好的。不出bug的代码,就是好的代码吗?
所谓好的代码,除了其他所有要求以外,还应该清晰准确地传达写作者的想法。
MartinFowler在《重构:改善既有代码的设计》里说,“任何一个傻瓜都能写出机器能懂的代码。好的程序员应该写出人能懂的代码。”
如果你不同意这句话,请立即放下这《实现模式》。因为这是一本关于如何用代码与他人(而非机
文摘 Intro duction
Here we are together.You’ve picked up my book(it's yours now).You akeady write code.You have probably already developed a style of your own through your own experiences.
The goal of this book is to help you communicate your intentions through your code.The book begins with an overview of programming and patterns (chapters 2-4).The remainder of the book(chapters 5-8)is a series of short essays,patterns,on how to use the features of Java to write readable code.It closes with a chapter on how to modif、r the advice here if you are writing frameworks instead of applications.Throughout,the book is focused on programming techniques that enhance communication.
There are several steps to communicating through code.First I had to become conscious while programming.I had been programming for years when I first started writing implementation patterns.1 was astonished to discover that,even though programming decisions came smoothly and quickly to me,I couldn’t explain why 1 was SO sure a method should be called such.and.SO or that a bit of logic belonged in this object over here.The first step towards communicating was slowing down long enough to become aware of what 1 was thinking,to stop pretending that I coded by instinct.
The second step was acknowledging the importance of other people.I found programming satislying,but I am self-centered.Before I could write communicative code I needed to believe that other people were as important as 1 was.Programming is hardly ever a solitary communion between one man and one machine.Caring about other people is a conscious decision,and one that requires practice.
Which brings me to the third step.Once I had exposed my thinking to sunlight and fresh air and acknowledged that other people had as much right to exist as I did,I needed to demonstrate my new perspective in practice.I use the implementation patterns here to program consciously and for others as well as myself.