• 代码大全:(第2版)(英文版)
21年品牌 40万+商家 超1.5亿件商品

代码大全:(第2版)(英文版)

148 全新

仅1件

北京丰台
认证卖家担保交易快速发货售后保障

作者[美]迈克康奈尔 著

出版社电子工业出版社

出版时间2008-01

版次1

装帧平装

货号208-B4-010

上书时间2024-10-23

喝茶客图书驿站

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
图书标准信息
  • 作者 [美]迈克康奈尔 著
  • 出版社 电子工业出版社
  • 出版时间 2008-01
  • 版次 1
  • ISBN 9787121033629
  • 定价 148.00元
  • 装帧 平装
  • 开本 16开
  • 纸张 胶版纸
  • 页数 914页
  • 字数 1000千字
  • 正文语种 英语
【内容简介】
《代码大全(第2版)》是著名IT畅销书作者、IEEESoftware杂志前主编、具有20年编程与项目管理经验的SteveMcConnell十余年前的经典著作的全新演绎:第2版做了全面的更新,增加了很多与时俱进的内容,包括对新语言、新的开发过程与方法论的讨论,等等。这是一本百科全书式的软件构建手册,涵盖了软件构建活动的方方面面,尤其强调提高软件质量的种种买践方法。作者特别注重源代码的可读性,详细讨论了类和函数命名、变量命名、数据类型和控制结构、代码布局等编程的最基本要素,也讨论了防御式编程、表驱动法、协同构建、开发者测试、性能优化等有效开发实践,这些都服务于软件的首要技术使命:管理复杂度。为了培养程序员编写高质量代码的习惯,书中展示了大量高质量代码示例(以及用作对比的低质量代码),提高软件质量是降低开发成本的重要途径。除此之外,《代码大全(第2版)(英文版)》归纳总结了来自专家的经验、业界研究以及学术成果,列举了大量软件开发领域的真实案例与统计数据,提高《代码大全(第2版)(英文版)》的说服力。《代码大全(第2版)(英文版)》中所论述的技术不仅填补了初级与高级编程实践之间的空白,而且也为程序员们提供了一个有关软件开发技术的信息来源。《代码大全(第2版)(英文版)》对经验丰富的程序员、技术带头人、自学的程序员及没有太多编程经验的学生都是大有裨益的。
【作者简介】
SteveMcConnell是Construx公司首席软件工程师。他是软件工程知识体系(SWEBOK)项目构建知识领域的先驱。Steve曾就职于微软、波音以及西雅图地区的一些公司,从事软件工程的研究。SteveMcConnell是以下著作的作者:《快速开发RapidDevelopment》(1996)、《软件项目长存之道SoftwareProjectSurvivalGuide》(1998)、和《专业软件开发ProfessionalSoftwareDevelopment》(2004)的作者。他的书作为杰出软件开发书籍,曾两次获得SoftwareDevelopment杂志的优震撼大奖。1998年,Steve被SoftwareDevelopment杂志的读者评为软件业最具影响力的三大人物之一,与比尔.盖茨(BillGates)和李纳斯.托瓦兹(LinusTorvalds)齐名。而且,Steve还是SPC(SoftwareProductivityCenter,加拿大软件进程改进公司)的ESTIMATEProfessional(的一款计划和估算工具)主要开发者,SoftwareDevelopmentProductivityaward(软件开发生产力大奖)的获得者。Steve从1984年就开始从事桌面软件产业,现在在快速开发方法论、工程估算、软件架构实施、性能调整、系统整合、和第三方合同管理方面已经具有专业的技术。
【目录】
Preface
Acknowledgments
ListofChecklists
ListofTables
ListofFigures
PartILayingtheFoundation
1WelcometoSoftwareConstruction
1.1WhatIsSoftwareConstruction?
1.2WhyIsSoftwareConstructionImportant?
1.3HowtoReadThisBook
2MetaphorsforaRicherUnderstandingofSoftwareDevelopment
2.1TheImportanceofMetaphors
2.2HowtoUseSoftwareMetaphors
2.3CommonSoftwareMetaphors
3MeasureTwice,CutOnce:UpstreamPrerequisites
3.1ImportanceofPrerequisites
3.2DeterminetheKindofSoftwareYoureWorkingOn
3.3Problem-DefinitionPrerequisite
3.4RequirementsPrerequisite
3.5ArchitecturePrerequisite
3.6AmountofTimetoSpendonUpstreamPrerequisites
4KeyConstructionDecisions
4.1ChoiceofProgrammingLanguage
4.2ProgrammingConventions
4.3YourLocationontheTechnologyWave
4.4SelectionofMajorConstructionPractices
PartIICreatingHigh-QualityCode
5DesigninConstruction
5.1DesignChallenges
5.2KeyDesignConcepts
5.3DesignBuildingBlocks:Heuristics
5.4DesignPractices
5.5CommentsonPopularMethodologies
6WorkingClasses
6.1ClassFoundations:AbstractDataTypes(ADTs)
6.2GoodClassInterfaces
6.3DesignandImplementationIssues
6.4ReasonstoCreateaClass
6.5Language-SpecificIssues
6.6BeyondClasses:Packages
7High-QualityRoutines
7.1ValidReasonstoCreateaRoutine
7.2DesignattheRoutineLevel
7.3GoodRoutineNames
7.4HowLongCanaRoutineBe?
7.5HowtoUseRoutineParameters
7.6SpecialConsiderationsintheUseofFunctions
7.7MacroRoutinesandInlineRoutines
8DefensiveProgramming
8.1ProtectingYourProgramfromInvalidInputs
8.2Assertions
8.3Error-HandlingTechniques
8.4Exceptions
8.5BarricadeYourProgramtoContaintheDamageCausedbyErrors
8.6DebuggingAids
8.7DeterminingHowMuchDefensiveProgrammingtoLeaveinProductionCode
8.8BeingDefensiveAboutDefensiveProgramming
9ThePseudocodeProgrammingProcess
9.1SummaryofStepsinBuildingClassesandRoutines
9.2PseudocodeforPros
9.3ConstructingRoutinesbyUsingthePPP
9.4AlternativestothePPP
PartIIIVariables
10GeneralIssuesinUsingVariables
10.1DataLiteracy
10.2MakingVariableDeclarationsEasy
10.3GuidelinesforInitializingVariables
10.4Scope
10.5Persistence
10.6BindingTime
10.7RelationshipBetweenDataTypesandControlStructures
10.8UsingEachVariableforExactlyOnePurpose
11ThePowerofVariableNames
11.1ConsiderationsinChoosingGoodNames
11.2NamingSpecificTypesofData
11.3ThePowerofNamingConventions
11.4informalNamingConventions
11.5StandardizedPrefixes
11.6CreatingShortNamesThatAreReadable
11.7KindsofNamestoAvoid
12FundamentalDataTypes
12.1NumbersinGeneral
12.2integers
12.3Floating-PointNumbers
12.4CharactersandStrings
12.5BooleanVariables
12.6EnumeratedTypes
12.7NamedConstants
12.8Arrays
12.9CreatingYourOwnTypes(TypeAliasing)
13UnusualDataTypes
13.1Structures
13.2Pointers
13.3GlobalData
PartIVStatements
14OrganizingStraight-LineCode
14.1StatementsThatMustBeinaSpecificOrder
14.2StatementsWhoseOrderDoesntMatter
15UsingConditionals
15.1ifStatements
15.2caseStatements
16ControllingLoops
16.1SelectingtheKindofLoop
16.2ControllingtheLoop
16.3CreatingLoopsEasily--FromtheInsideOut
16.4CorrespondenceBetweenLoopsandArrays
17UnusualControlStructures
17.1MultipleReturnsfromaRoutine
17.2Recursion
17.3goto
17.4PerspectiveonUnusualControlStructures
18Table-DrivenMethods
18.1GeneralConsiderationsinUsingTable-DrivenMethods
18.2DirectAccessTables
18.3IndexedAccessTables
18.4Stair-StepAccessTables
18.5OtherExamplesofTableLookups
19GeneralControlIssues
19.1BooleanExpressions
19.2CompoundStatements(Blocks)
19.3NullStatements.
19.4TamingDangerouslyDeepNesting
19.5AProgrammingFoundation:StructuredProgramming
19.6ControlStructuresandComplexity
PartVCodeImprovements
20TheSoftware-QualityLandscape
20.1CharacteristicsofSoftwareQuality
20.2TechniquesforImprovingSoftwareQuality
20.3RelativeEffectivenessofQualityTechniques
20.4WhentoDoQualityAssurance
20.5TheGeneralPrincipleofSoftwareQuality
21CollaborativeConstruction
21.1OverviewofCollaborativeDevelopmentPractices
21.2PairProgramming
21.3FormalInspections
21.4OtherKindsofCollaborativeDevelopmentPractices
22DeveloperTesting
22.1RoleofDeveloperTestinginSoftwareQuality
22.2RecommendedApproachtoDeveloperTesting
22.3BagofTestingTricks
22.4TypicalErrors
22.5Test-SupportTools
22.6ImprovingYourTesting
22.7KeepingTestRecords
23Debugging
23.1OverviewofDebuggingIssues
23.2FindingaDefect
23.3FixingaDefect
23.4PsychologicalConsiderationsinDebugging
23.5DebuggingTools--ObviousandNot-So-Obvious
24Refactoring
24.1KindsofSoftwareEvolution
24.2IntroductiontoRefactoring
24.3SpecificRefactorings
24.4RefactoringSafely
24.5RefactoringStrategies
25Code-TuningStrategies
25.1PerformanceOverview
25.2IntroductiontoCodeTuning
25.3KindsofFatandMolasses
25.4Measurement
25.5Iteration
25.6SummaryoftheApproachtoCodeTuning
26Code-TuningTechniques
26.1Logic
26.2Loops
26.3DataTransformations
26.4Expressions
26.5Routines
26.6RecodinginaLow-LevelLanguage
26.7TheMoreThingsChange,theMoreTheyStaytheSame
PartVISystemConsiderations
27HowProgramSizeAffectsConstruction
27.1CommunicationandSize
27.2RangeofProjectSizes
27.3EffectofProjectSizeonErrors
27.4EffectofProjectSizeonProductivity
27.5EffectofProjectSizeonDevelopmentActivities
28ManagingConstruction
28.1EncouragingGoodCoding
28.2ConfigurationManagement
28.3EstimatingaConstructionSchedule
28.4Measurement
28.5TreatingProgrammersasPeople
28.6ManagingYourManager
29Integration
29.1ImportanceoftheIntegrationApproach
29.2IntegrationFrequency--PhasedorIncremental?
29.3IncrementalIntegrationStrategies
29.4DailyBuildandSmokeTest
30ProgrammingTools
30.1DesignTools
30.2Source-CodeTools
30.3Executable-CodeTools
30.4Tool-OrientedEnvironments
30.5BuildingYourOwnProgrammingTools
30.6ToolFantasyland
PartVIISoftwareCraftsmanship
31LayoutandStyle
31.1LayoutFundamentals
31.2LayoutTechniques
31.3LayoutStyles
31.4LayingOutControlStructures
31.5LayingOutIndividualStatements
31.6LayingOutComments
31.7LayingOutRoutines
31.8LayingOutClasses
32Self-DocumentingCode
32.1ExternalDocumentation
32.2ProgrammingStyleasDocumentation
32.3ToCommentorNottoComment
32.4KeystoEffectiveComments
32.5CommentingTechniques
32.6IEEEStandards
33PersonalCharacter
33.1IsntPersonalCharacterOfftheTopic?
33.2IntelligenceandHumility
33.3Curiosity
33.4IntellectualHonesty
33.5CommunicationandCooperation
33.6CreativityandDiscipline
33.7Laziness
33.8CharacteristicsThatDontMatterAsMuchAsYouMightThink
33.9Habits
34ThemesinSoftwareCraftsmanship
34.1ConquerComplexity
34.2PickYourProcess
34.3WriteProgramsforPeopleFirst,ComputersSecond
34.4ProgramintoYourLanguage,NotinIt
34.5FocusYourAttentionwiththeHelpofConventions
34.6PrograminTermsoftheProblemDomair
34.7WatchforFallingRocks
34.8Iterate,Repeatedly,AgainandAgain
34.9ThouShaltRendSoftwareandReligionAsunder
35WheretoFindMoreInformation
35.1InformationAboutSoftwareConstruction
35.2TopicsBeyondConstruction
35.3Periodicals
35.4ASoftwareDevelopersReadingPlan
35.5JoiningaProfessionalOrganization
Bibliography
Index
点击展开 点击收起

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP