注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)從重構(gòu)到模式(英文版)

從重構(gòu)到模式(英文版)

從重構(gòu)到模式(英文版)

定 價(jià):¥49.00

作 者: (美)克里夫斯基 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng): 經(jīng)典原版書庫
標(biāo) 簽: 暫缺

ISBN: 9787111175681 出版時(shí)間: 2006-01-01 包裝: 膠版紙
開本: 小16開 頁數(shù): 367 字?jǐn)?shù):  

內(nèi)容簡介

  本書榮獲2005年《軟件開發(fā)》雜志圖書通用類的效率大獎(jiǎng)(ProductivityAward).1994年,《設(shè)計(jì)模式》通過引入經(jīng)典的解決方案來處理反復(fù)出現(xiàn)的設(shè)計(jì)問題而改變了面向?qū)ο箝_發(fā)技術(shù)的發(fā)展前景;1999年,《重構(gòu)》通過引入一種有效的過程來改善代碼而徹底變革了設(shè)計(jì)的內(nèi)涵;本書則通過重構(gòu)的演進(jìn)過程來保持模式的一致性,從而改變了我們的設(shè)計(jì)方法。..本書介紹了以模式為導(dǎo)向的重構(gòu)方法的理論和實(shí)踐:一系列低級(jí)重構(gòu),讓設(shè)計(jì)人員能夠安全地將設(shè)計(jì)移到模式實(shí)現(xiàn),或從模式實(shí)現(xiàn)中移出設(shè)計(jì)。通過使用實(shí)際項(xiàng)目的代碼,本書記錄了潛藏在20多個(gè)基于模式的設(shè)計(jì)轉(zhuǎn)換之下的思想方法和設(shè)計(jì)步驟。同時(shí),本書對(duì)于模式差異以及如何以盡可能簡單的方式實(shí)現(xiàn)模式提出了頗有見解的觀點(diǎn)。本書的主要內(nèi)容■列出27個(gè)以模式為導(dǎo)向的重構(gòu),并輔以實(shí)際項(xiàng)目的代碼實(shí)例。■描述12個(gè)“設(shè)計(jì)味道”(designsmell),指示出需要本書所講述的重構(gòu)方法?!鲫P(guān)于模式和重構(gòu)的綜合說明以及新的觀點(diǎn)和想法?!鲈敿?xì)的實(shí)現(xiàn)機(jī)制:如何組合低級(jí)重構(gòu)來實(shí)現(xiàn)高級(jí)模式?!龆喾N方式來實(shí)現(xiàn)相同的模式以及何時(shí)使用哪一種。■采用實(shí)際的方法引導(dǎo)讀者尤其是缺乏模式或重構(gòu)經(jīng)驗(yàn)的讀者開始學(xué)習(xí)模式或重構(gòu)方面的知識(shí)。...本書提煉和反映了全球模式、重構(gòu)和敏捷開發(fā)社區(qū)60多位軟件工程領(lǐng)域先驅(qū)的思想和觀點(diǎn)。不管你正在集中精力進(jìn)行遺留開發(fā)還是新型開發(fā),本書都將幫助你學(xué)會(huì)如何安全、有效地做出重要的設(shè)計(jì)變更,使你成為更好的軟件設(shè)計(jì)人員。

作者簡介

  Joshua Kerievsky Industrial Logic公司(hllp:industria11ogic.com)的創(chuàng)始人,這是一家主營極限編程業(yè)務(wù)的公司。自1988年以來,作為一名專業(yè)的軟件開發(fā)人員、教員和導(dǎo)師,他為Bankers Trust、MTV、MBNA、Ansys、MDS Sciex、Nielsen Media Research和SunMicrosystems等客戶提供咨詢及培訓(xùn)服務(wù)。他還經(jīng)常在各種會(huì)議上發(fā)言,并撰寫了大量的論文。

圖書目錄

ForewordbyRalphJohnson
ForewordbyMartinFowler
Preface
WhatisThisBookAbout?.
WhatAretheGoalsofThisBook?
WhoShouldReadThisBook?
WhatBackgroundDoYouNeed?
HowtoUseThisBook
TheHistoryofThisBook
StandingontheShouldersofGiants
Acknowledgments
Chapter1:WhyIWroteThisBook
Over-Engineering
ThePatternsPanacea
Under-Engineering
Test-DrivenDevelopmentandContinuousRefactoring
RefactoringandPatterns
EvolutionaryDesign
Chapter2:Refactoring
WhatIsRefactoring?
WhatMotivatesUstoRefactor?
ManyEyes
Human-ReadableCode
KeepingItClean
SmallSteps
DesignDebt
EvolvingaNewArchitecture
CompositeandTest-DrivenRefactorings
TheBenefitsofCompositeRefactorings
RefactoringTools
Chapter3:Patterns
WhatIsaPattern?
PatternsHappy
ThereAreManyWaystoImplementaPattern
Refactoringto,towards,andawayfromPatterns
DoPatternsMakeCodeMoreComplex?
PatternKnowledge
Up-FrontDesignwithPatterns
Chapter4:CodeSmells
DuplicatedCode
LongMethod
ConditionalComplexity
PrimitiveObsession
IndecentExposure
SolutionSprawl
AlternativeClasseswithDifferentInterfaces
LazyClass
LargeClass
SwitchStatements
CombinatorialExplosion
OddballSolution
Chapter5:ACatalogofRefactoringstoPatterns
FormatoftheRefactorings
ProjectsReferencedinThisCatalog
XMLBuilders
HTMLParser..
LoanRiskCalculator
AStartingPoint
AStudySequence
Chapter6:Creation
ReplaceConstructorswithCreationMethods
Motivation
Mechanics
Example
Variations
MoveCreationKnowledgetoFactory
Motivation
Mechanics
Example
EncapsulateClasseswithFactory
Motivation
Mechanics
Example
Variations
IntroducePolymorphicCreationwithFactoryMethod
Motivation
Mechanics
Example
EncapsulateCompositewithBuilder
Mechanics
Example
Variations
InlineSingleton
Motivation
Mechanics
Example
Chapter7:Simplification
ComposeMethod
Motivation
Mechanics
Example
ReplaceConditionalLogicwithStrategy
Motivation
Mechanics
Example
MoveEmbellishmenttoDecorator
Motivation
Mechanics
Example
ReplaceState-AlteringConditionalswithState
Motivation
Mechanics
Example
ReplaceImplicitTreewithComposite
Motivation
Mechanics
Example
ReplaceConditionalDispatcherwithCommand
Motivation
Mechanics
Example
Chapter8:Generalization
FormTemplateMethod
Motivation
Mechanics
Example
ExtractComposite
Motivation
Mechanics
Example
ReplaceOne/ManyDistinctionswithComposite
Motivation
Mechanics
Example
ReplaceHard-CodedNotificationswithObserver
Motivation
Mechanics
Example
UnifyInterfaceswithAdapter
Motivation
Mechanics
Example
ExtractAdapter
Motivation
Mechanics
Example
Variations
ReplaceImplicitLanguagewithInterpreter
Motivation
Mechanics
Example
Chapter9:Protection
ReplaceTypeCodewithClass
Motivation
Mechanics
Example
LimitInstantiationwithSingleton
Motivation
Mechanics
Example
IntroduceNullObject
Motivation
Mechanics
Example
Chapter10:Accumulation
MoveAccumulationtoCollectingParameter
Motivation
Mechanics
Example
MoveAccumulationtoVisitor
Motivation
Mechanics
Example
Chapter11:Utilities
ChainConstructors
Motivation
Mechanics
Example
UnifyInterfaces
Motivation
Mechanics
Example
ExtractParameter
Motivation
Mechanics
Example...
AfterwordbyJohnBrantandDonRoberts
References
Index

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)