内容简介
AboutThisProductDescriptionProgrammerswhoendureandsucceedamidstswirlinguncertaintyandnonstoppressureshareacommonattribute:Theycaredeeplyaboutthepracticeofcreatingsoftware.Theytreatitasacraft.Theyareprofessionals.InTheCleanCoder:ACodeofConductforProfessionalProgrammers,legendarysoftwareexpertRobertC.Martinintroducesthedisciplines,techniques,tools,andpracticesoftruesoftwarecraftsmanship.Thisbookispackedwithpracticaladvice–abouteverythingfromestimatingandcodingtorefactoringandtesting.Itcoversmuchmorethantechnique:Itisaboutattitude.Martinshowshowtoapproachsoftwaredevelopmentwithhonor,self-respect,andpride;workwellandworkclean;communicateandestimatefaithfully;facedifficultdecisionswithclarityandhonesty;andunderstandthatdeepknowledgecomeswitharesponsibilitytoact.ReaderswilllearnWhatitmeanstobehaveasatruesoftwarecraftsmanHowtodealwithconflict,tightschedules,andunreasonablemanagersHowtogetintotheflowofcoding,andgetpastwriter’sblockHowtohandleunrelentingpressureandavoidburnoutHowtocombineenduringattitudeswithnewdevelopmentparadigmsHowtomanageyourtime,andavoidblindalleys,marshes,bogs,andswampsHowtofosterenvironmentswhereprogrammersandteamscanthriveWhentosay“No”–andhowtosayitWhentosay“Yes”–andwhatyesreallymeansGreatsoftwareissomethingtomarvelat:powerful,elegant,functional,apleasuretoworkwithasbothadeveloperandasauser.Greatsoftwareisn’twrittenbymachines.Itiswrittenbyprofessionalswithanunshakablecommitmenttocraftsmanship.TheCleanCoderwillhelpyoubecomeoneofthem–andearntheprideandfulfillmentthattheyalonepossess.
作者简介
RobertC.Martin(“UncleBob”)hasbeenaprogrammersince1970.HeisfounderandpresidentofObjectMentor,Inc.,aninternationalfirmofhighlyexperiencedsoftwaredevelopersandmanagerswhospecializeinhelpingcompaniesgettheirprojectsdone.ObjectMentoroffersprocessimprovementconsulting,object-orientedsoftwaredesignconsulting,training,andskilldevelopmentservicestomajorcorporationsworldwide.Martinhaspublisheddozensofarticlesinvarioustradejournalsandisaregularspeakeratinternationalconferencesandtradeshows.Hehasauthoredandeditedmanybooks,including:DesigningObjectOrientedC++ApplicationsUsingtheBoochMethodPatternsLanguagesofProgramDesign3MoreC++GemsExtremeProgramminginPracticeAgileSoftwareDevelopment:Principles,Patterns,andPracticesUMLforJavaProgrammersCleanCode