O'Reilly:深入浅出软件开发(影印版)
O'Reilly:深入浅出软件开发(影印版)
¥
35
4.0折
¥
88
九品
仅1件
作者[美]皮隆(Pilone D.) 著
出版社东南大学出版社
出版时间2009-01
版次1
装帧平装
货号0055
上书时间2022-05-06
商品详情
- 品相描述:九品
图书标准信息
-
作者
[美]皮隆(Pilone D.) 著
-
出版社
东南大学出版社
-
出版时间
2009-01
-
版次
1
-
ISBN
9787564112363
-
定价
88.00元
-
装帧
平装
-
开本
16开
-
纸张
胶版纸
-
页数
459页
-
字数
523千字
-
正文语种
英语
- 【内容简介】
-
想知道何为测试驱动开发吗?想知道高级顾问在按小时计费的咨询中是如何应用最佳实践的吗?或者也许您正准备自动构建您的软件,为代码使用版本控制,重构以及在软件中集成一些设计模式。当您读完这本《深入浅出软件开发》的时候,您将能够跟踪项目进度,统计团队每个部分的速度以及反复进行需求分析、设计、开发和部署。我们认为您用来学习新概念的时间是极其宝贵的。《深入浅出软件开发》使用认知科学和学习理论的最新研究成果,为您带来多感官的学习体验,它采用了丰富、可视、适于大脑工作的形式,而不是用过多的文字使您感到昏昏欲睡。本书为英文影印版。
- 【目录】
-
Intro
1greatsoftwaredevelopment:Pleasingyourcustomer
TomsTrailsisgoingonline
Mostprojectshavetwomajorconcerns
TheBigBangapproachtodevelopment
Flashforward:twoweekslater
BigbangdevelopmentusuallyendsupinabigMESS
Greatsottwaredevelopmentis...
GettingtothegoalwithITERATION
Eachiterationisamini-project
EachiterationisQUALITYsoftware
ThecustomerWILLchangethingsup
Itsuptoyoutomakeadjustments
ButtherearesomeBIGproblems...
Iterationhandleschangeautomatically(wellsortot)
YoursoftwareisntcompleteuntilitsbeenRELEASED
ToolsforyourSoftwareDevelopmentToolbox
2gatheringrequirements:Knowingwhatthecustomerwants
OrionsOrbitsismodernizing
TalktoyourcustomertogetMOREinformation
Blueskywithyourcustomer
Sometimesyourblueskysessionlookslikethis...
FindoutwhatpeopleREALLYdo
YourrequirementsmustbeCUSTOMER-oriented
Developyourrequirementswithcustomerfeedback
UserstoriesdetinetheWHATofyourproject...
estimatesdefinetheWHEN
Cubicleconversation
PlayingPlanningPoker
Putassumptionsontrialfortheirlives
ABIGuserstoWestimateisaBADuserstoryestimate
Thegoalisconvergence
Therequirementtoestimateiterationcycle
Finally,werereadytoestimatethewholeproject
3projectplanning:Planningforsuccess
CustomerswanttheirsoftwareNOW!
Prioritizewiththecustomer
WeknowwhatsinMilestone1.0(well,maybe)
Ifthefeaturesdontfit,re-prioritize
Morepeoplesometimesmeansdiminishingreturns
Workyourwaytoareasonablemilestone1.0
Iterationsshouldbeshortandsweet
Comparingyourplantoreality
Velocityaccountsforoverheadinyourestimates
ProgrammersthinkinUTOPIANdays...
DevelopersthinkinREAL-WORLDdays...
Whenisyouriterationtoolong?
DealwithvelocityBEFOREyoubreakintoiterations
Timetomakeanevaluation
Managingcustomers
TheBigBoardonyourwall
Howtoruinyourteamslives
4userstoriesandtasks:Gettingtotherealwork
IntroducingiSwoon
Doyourtasksaddup?
Plotjusttheworkyouhaveleft
Addyourtaskstoyourboard
Startworkingonyourtasks
AtaskisonlyinprogresswhenitsINPROGRESS
WhatifImworkingontwothingsatonce?
Yourfirststandupmeeting...
Task1:CreatetheDateclass
Standupmeeting:Day5,endofWeek1...
Standupmeeting:Day2,Week2...
Weinterruptthischapter...
Youhavetotrackunplannedtasks
Unexpectedtasksraiseyourburn-dovmrate
Velocityhelps,but...
Wehavealottodo...
...butweknowEXAC,TLYwherewestand
VelocityExposed
5good-enoughdesign:Gettingitdonewithgreatdesign
iSwoonisinserioustrouble...
Thisdesignbreaksthesingleresponsibilityprinciple
Spottingmultipleresponsibiliesinyourdesign
Goingfrommultipleresponsibiliestoasingleresponsibility
YourdesignshouldobeytheSRP,butalsobeDRY...
Thepost-refactoringstandupmeeting...
Unplannedtasksarestilljusttasks
Partofyourtaskisthedemoitself
Wheneverythingscomplete,theiterationsdone
6versioncontrol:Defensivedevelopment
YouvegotanewcontractBeatBoxPro
AndnowtheGUIwork...
DemothenewBeatBoxforthecustomer
LetsstartwithVERSIONCONTROL
Firstsetupyourproject...
...thenyoucancheckcodeinandout.
Mostversioncontroltoolswilltryandsolveproblemsforyou
TheservertriestoMERGEyourchanges
Ifyoursoftwarecantmergethechanges,itissuesaconflict
Moreiterations,morestories...
Wehavemorethanoneversionofoursoftware...
Goodcommitmessagesmakefindingoldersoftwareeasier
NowyoucancheckoutVersion1.0
(Emergency)standupmeeting
Tagyourversions
Tags,branches,andtrunks,ohmy!
FixingVersion1.0...tbrrealthistime.
WehaveTWOcodebasesnow
WhenNOTtohranch...
TheZenofgoodbranching
Whatversioncontroldoes...
Versioncontrolcantmakesureyoucodeactuallyworks...
ToolsforyourSoftwareDevelopmentToolbox
6.5buildingyourcode:Inserttabaintoslotb...
Developersarentmindreaders
Buildingyourprojectinonestep
Ant:abuildtoolforJavaprojects
Projects,properties,targets,tasks
Goodbuildscripts...
GoodbuildscriptsgoBEYONDthebasics
Yourbuildscriptiscode,too
Newdeveloper,taketwo
ToolsforyourSoftwareDevelopmentToolbox
7testingandcontinuousintegration:Thingsfallapart
ThingswillALWAYSgowrong...
Therearethreewaystolookatyoursystem...
Black-boxtestingfocusesonINPUTandOUTPUT
Grey-boxtestinggetsyouCLOSERtothecode
White-boxtestingusesinsideknowledge
TestingEVERYTHINGwithonestep
Automateyourtestswithatestingframework
Useyourframeworktorunyourtests
AtthewheelofCIwithCruiseControl
Testingguaranteesthingswillwork..,right?
TestingallyourcodemeanstestingEVERYBRANCH
Useacoveragereporttoseewhatscovered
Gettinggoodcoverageisntalwayseasy...
WhatCMdoes...
ToolsforyourSoftwareDevelopmentToolbox
8test-drivendevelopment:Holdingyourcodeaccountable
TestFIRST,notlast
SoweregoingtotestFIRST...
Welcometotest-drivendevelopment
Yourfirsttest...
...failsmiserably.
GetyourteststoGREEN
Red,green,refactor...
InTDD,testsDRIVEyourimplementation
Completingataskmeansyouvegotallthetestsyouneed,andtheyallpass
Whenyourtestspass,moveon!
Simplicitymeansavoidingdependencies
Alwayswritetestablecode
Whenthingsgethardtotest,examineyourdesign
Thestrategypatternprovidesformuhipleimp!ementationsofasingleinterface
Keepyourtestcodewithyourtests
Testingproducesbettercode
Moretestsalwaysmeanslotsmorecode
Strategypatterns,loosecouplings,objectstandins...
Weneedlotsofdifferent,butsimilar,objects
Whatifwegeneratedobjects?
Amockobjectstandsinforrealobjects-
Mockobjectsareworkingobjectstand-ins
Goodsoftwareistestable...
Itsnoteasybeingreen...
Adayinthelifeofatest-drivendeveloper-..
ToolsforyourSoftwareDevelopmentToolbox
9endinganiteration:Itsallcomingtogether...
Youriterationisjustaboutcomplete...
...butthereslotsleftyoucoulddo
SystemtestingMUSTbedone...
...butWHOdoessystemtesting?
Systemtestingdependsonacompletesystemtotest
GoodsystemtestingrequiresTWOiterationcycles
Moreiterationsmeansmoreproblems
Top10TraitsofEffectiveSystemTesting
Thelife(anddeath)ofabug
Soyoufoundahug....
Anatomyofabugreport
ButtheresstillplentyleftyouCOULDdo...
Timefortheiterationreview
Someiterationreviewquestions
AGENERALprioritylistforgettingEXTRAthingsdone
ToolsforyourSoftwareDevelopmentToolbox
10thenextiteration:/fitaintbroke...youstillbetterfixit
Whatisworkingsoftware?
Youneedtoplanforthenextiteration
Velocityaccountsfor..,theREALWORLD
AnditsSTILLaboutthecustomer
SomeoneelsessoftwareisSTILLjustsoftware
Customerapproval?Check!
Testingyourcode
Houston,wereallydohaveaproblem...
TrustNOONE
Itdoesntmatterwhowrotethecode.
IfitsinYOURsoftware,itsYOURresponsibility.
Youwithoutyourprocess
Youwithyourprocess
11bugs:Squashingbugslikeapro
PreviouslyonIteration2
First,youvegottotalktothecustomer
Priorityone:getthingsbuildable
Wecouldfixcode...
...butweneedtofixfunctionality
Figureoutwhatfunctionalityworks
NOWyouknowwhatsnotworking
Whatwouldyoudo?
Spiketesttoestimate
Whatdothespiketestresultstellyou?
Yourteamsgutfeelmatters
Giveyourcustomerthebugfixestimate
Thingsarelookinggood...
...andyoufinishtheiterationsuccessfully!
ANDthecustomerishappy
ToolstbryourSoftwareDevelopmentToolbox
12therealworld:Havingaprocessinlife
Pinningdownasoftwaredevelopmentprocess
Agoodprocessdeliversgoodsoftware
Formalattirerequired...
Someadditionalresources...
Moreknowledge==betterprocess
ToolsforyourSoftwareDevelopmentToolbox
Appendix1leftovers
Appendix2techniquesandprinciples
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价