代碼大全2(紀(jì)念版) 版權(quán)信息
- ISBN:9787302583646
- 條形碼:9787302583646 ; 978-7-302-58364-6
- 裝幀:一般純質(zhì)紙
- 冊數(shù):暫無
- 重量:暫無
- 所屬分類:>
代碼大全2(紀(jì)念版) 本書特色
史蒂夫·麥康奈爾(Steve McConnell)的《代碼大全》是全球公認(rèn)的編程*佳實用指南,十多年來一直幫助開發(fā)人員寫出更好的軟件。這本經(jīng)典書籍包含行之有效的實踐和數(shù)百個范例代碼,充分展現(xiàn)了軟件構(gòu)建的藝術(shù)和科學(xué)。史蒂夫?qū)W(xué)術(shù)界和日常商業(yè)實踐進(jìn)行了廣泛的研究,從中萃取出精華,通過通俗易懂的表達(dá)方式和體例,形成了一套行之有效的技術(shù)、原理和實踐體系,旨在幫助廣大程序員以*快的速度、更少的時間、更少的預(yù)算,來寫出質(zhì)量更高、更優(yōu)美的代碼。 作為一本綜合性強(qiáng)和實用性高的經(jīng)典參考書,本書適合任何一個程序員閱讀,無論經(jīng)驗水平、開發(fā)環(huán)境或項目規(guī)模如何,都可以從中得到啟發(fā),構(gòu)建出高質(zhì)量的代碼,真正做到代碼完成的境界。 透過本書,發(fā)現(xiàn)經(jīng)得起時間考驗的技巧和策略,從而幫助讀者: & 實現(xiàn)大道至簡和更有創(chuàng)新的設(shè)計 & 收獲合作開發(fā)的好處 & 應(yīng)用防御性編程技術(shù)來減少和清除錯誤 & 利用機(jī)會來以安全的方式重構(gòu)或演化代碼 & 使用適合具體項目的構(gòu)建實踐 & 快速有效地調(diào)試問題 & 盡早正確地解決關(guān)鍵的構(gòu)建問題 & 質(zhì)量內(nèi)建貫穿于整個項目周期,無論開始、中間和結(jié)尾
代碼大全2(紀(jì)念版) 內(nèi)容簡介
《代碼大全2(紀(jì)念版)》作為名家經(jīng)典著作,是一本完整的軟件構(gòu)建手冊,涵蓋軟件構(gòu)建過程中的所有細(xì)節(jié)。它從軟件質(zhì)量和編程思想等方面論述軟件構(gòu)建的各個主題,并詳細(xì)論述主流的新技術(shù)、高屋建瓴的觀點和通用的概念,還含有豐富而典型的程序示例。本書所論述的技術(shù)不僅填補(bǔ)了初級與中高級編程技術(shù)之間的空白,同時還為程序員提供了一個有關(guān)編程技巧的信息來源。 《代碼大全2(紀(jì)念版)》對經(jīng)驗豐富的程序員、技術(shù)帶頭人、自學(xué)的程序員及幾乎不懂太多編程技巧的學(xué)生大有幫助。無論是什么背景的讀者,都可以通過閱讀和領(lǐng)會本書,在更短的時間內(nèi)更輕松地寫出更好、更簡潔和更優(yōu)雅的程序。
代碼大全2(紀(jì)念版) 目錄
第Ⅰ部分 奠定基礎(chǔ)
第1 章 歡迎來到軟件構(gòu)建的世界 003
1.1 什么是軟件構(gòu)建 003
1.2 軟件構(gòu)建為何如此重要 006
1.3 如何閱讀本書 008
第2 章 通過隱喻更充分地理解軟件開發(fā) 009
2.1 隱喻的重要性 009
2.2 如何使用軟件隱喻 012
2.3 常見的軟件隱喻 013
第3 章 謀定而后動:前期準(zhǔn)備 023
3.1 前期準(zhǔn)備的重要性 024
3.2 確定要開發(fā)什么類型的軟件 030
3.3 定義問題的先決條件 034
3.4 需求的先決條件 036
3.5 架構(gòu)的先決條件 041
3.6 前期準(zhǔn)備所花費的時間 052
第4 章 關(guān)鍵的構(gòu)建決策 057
4.1 編程語言的選擇 057
4.2 編程約定 062
4.3 判斷個人處于技術(shù)浪潮中的哪個階段 062
4.4 選擇重要的構(gòu)建實踐 065
第II 部分 高質(zhì)量的代碼
第5 章 軟件構(gòu)建的設(shè)計 069
5.1 設(shè)計挑戰(zhàn) 070
5.2 關(guān)鍵設(shè)計概念 073
5.3 設(shè)計構(gòu)建基塊:啟發(fā)式方法 083
5.4 設(shè)計實踐 107
5.5 點評各種流行的方法論 115
第6 章 可以工作的類 121
6.1 類的基礎(chǔ):抽象數(shù)據(jù)類型(ADT) 122
6.2 良好的類接口 129
6.3 設(shè)計和實現(xiàn)問題 139
6.4 創(chuàng)建類的理由 149
6.5 語言特定問題 153
6.6 超越類:包 153
第7 章 高質(zhì)量的子程序 157
7.1 創(chuàng)建子程序的正當(dāng)理由 160
7.2 子程序級別的設(shè)計 165
7.3 好的子程序名稱 169
7.4 一個子程序應(yīng)該有多長 171
7.5 如何使用子程序參數(shù) 173
7.6 函數(shù)使用中的特別注意事項 180
7.7 宏子程序和內(nèi)聯(lián)子程序 182
第8 章 防御式編程 187
8.1 保護(hù)程序,使其免受無效輸入的影響 188
8.2 斷言 189
8.3 錯誤處理技術(shù) 194
8.4 異常 198
8.5 隔離程序,使之包容由錯誤造成的損害 203
8.6 調(diào)試輔助代碼 205
8.7 確定在生產(chǎn)代碼中保留多少防御式代碼 209
8.8 對防御式編程采取防御的姿態(tài) 211
第9 章 偽代碼編程過程 215
9.1 類和子程序構(gòu)建步驟總結(jié) 215
9.2 面向?qū)<业膫未a 218
9.3 使用PPP 構(gòu)建子程序 220
9.4 PPP 的替代方案 233
第Ⅲ部分 變量
第10 章 變量使用中的常規(guī)問題 239
10.1 數(shù)據(jù)掃盲 240
10.2 簡化變量聲明 241
10.3 變量初始化指南 242
10.4 作用域 247
10.5 持久性 254
10.6 綁定時間 255
10.7 數(shù)據(jù)類型和控制結(jié)構(gòu)之間的關(guān)系 257
10.8 每個變量只有一個用途 258
第11 章 變量名稱的威力 263
11.1 選擇好名稱的注意事項 263
11.2 特定數(shù)據(jù)類型的命名 269
11.3 命名規(guī)范的威力 275
11.4 非正式的命名規(guī)范 276
11.5 前綴的標(biāo)準(zhǔn)化 283
11.6 創(chuàng)建可讀的短名稱 286
11.7 變量名稱避坑指南 289
第12 章 基本數(shù)據(jù)類型 295
12.1 一般的數(shù)字 296
12.2 整型 297
12.3 浮點型 299
12.4 字符和字符串 302
12.5 布爾變量 305
12.6 枚舉類型 307
12.7 具名常量 312
12.8 數(shù)組 314
12.9 創(chuàng)建自定義類型( 類型別名) 316
第13 章 不常見的數(shù)據(jù)類型 323
13.1 結(jié)構(gòu)體 323
13.2 指針 327
13.3 全局?jǐn)?shù)據(jù) 340
第Ⅳ部分 語句
第14 章 直線型代碼的組織 353
14.1 順序攸關(guān)的語句 353
14.2 順序無關(guān)的語句 356
第15 章 使用條件語句 361
15.1 if 語句 361
15.2 case 語句 367
第16 章 控制循環(huán) 373
16.1 選擇循環(huán)類型 373
16.2 控制循環(huán) 379
16.3 輕松創(chuàng)建循環(huán):由內(nèi)而外 391
16.4 循環(huán)和數(shù)組的對應(yīng)關(guān)系 393
第17 章 不常見的控制結(jié)構(gòu) 395
17.1 子程序中的多個返回點 395
17.2 遞歸 397
17.3 goto 語句 402
17.4 眾說紛紜,談?wù)劜怀R姷目刂平Y(jié)構(gòu) 413
第18 章 表驅(qū)動法 417
18.1 表驅(qū)動法使用總則 417
18.2 直接訪問表 419
18.3 索引訪問表 431
18.4 階梯訪問表 433
18.5 表查詢的其他示例 436
第Ⅴ部分 代碼改進(jìn)
第20 章 軟件質(zhì)量概述 469
20.1 軟件質(zhì)量的特性 469
20.2 改進(jìn)軟件質(zhì)量的技術(shù) 472
20.3 質(zhì)量保證技術(shù)的相對效能 475
20.4 何時進(jìn)行質(zhì)量保證 479
20.5 軟件質(zhì)量的普遍原理 479
第21 章 協(xié)同構(gòu)建 483
21.1 協(xié)同開發(fā)實踐概述 484
21.2 結(jié)對編程 487
21.3 正式審查 489
21.4 其他類型的協(xié)同開發(fā)實踐 496
第22 章 開發(fā)人員測試 503
22.1 開發(fā)者測試對軟件質(zhì)量所起的作用 504
22.2 開發(fā)人員測試的推薦方法 507
22.3 一些測試技巧 509
22.4 典型錯誤 522
22.5 測試支持工具 528
22.6 改進(jìn)測試 534
22.7 維護(hù)測試記錄 535
第23 章 調(diào)試 541
23.1 調(diào)試問題概述 541
23.2 發(fā)現(xiàn)缺陷 546
23.3 修復(fù)缺陷 557
23.4 調(diào)試中的心理因素 560
23.5 那些顯而易見和不太明顯的調(diào)試工具 563
第24 章 重構(gòu) 569
24.1 軟件演變的類型 570
24.2 重構(gòu)簡介 571
24.3 特定的重構(gòu) 577
24.4 安全重構(gòu) 585
24.5 重構(gòu)策略 587
第25 章 代碼調(diào)優(yōu)策略 591
25.1 性能概述 592
25.2 代碼調(diào)優(yōu)簡介 595
25.3 各式各樣的臃腫和蜜糖 601
25.4 度量 607
25.5 迭代 608
25.6 代碼調(diào)優(yōu)方法總結(jié) 609
第26 章 代碼調(diào)優(yōu)技術(shù) 613
26.1 邏輯 614
26.2 循環(huán) 619
26.3 數(shù)據(jù)變換 628
26.4 表達(dá)式 633
26.5 子程序 642
26.6 用低級語言重新編碼 643
26.7 改得越多,越不會有大的改觀 646
第Ⅵ部分 系統(tǒng)化考慮
第27 章 程序規(guī)模對構(gòu)建的影響 651
27.1 溝通和規(guī)模 651
27.2 項目規(guī)模的范圍 652
27.3 項目規(guī)模對錯誤的影響 653
27.4 項目規(guī)模對生產(chǎn)力的影響 655
27.5 項目規(guī)模對開發(fā)活動的影響 656
第19 章 常規(guī)控制問題 437
19.1 布爾表達(dá)式 437
19.2 復(fù)合語句( 語句塊) 448
19.3 空語句 449
19.4 駕馭深層嵌套 451
19.5 編程基礎(chǔ):結(jié)構(gòu)化編程 460
19.6 控制結(jié)構(gòu)與復(fù)雜度 462
第28 章 管理構(gòu)建 663
28.1 鼓勵良好的編碼實踐 664
28.2 配置管理 666
28.3 評估構(gòu)建進(jìn)度表 673
28.4 度量 679
28.5 以人為本,善待每一位程序員 683
28.6 向上管理 689
第29 章 集成 693
29.1 集成方法的重要性 693
29.2 集成的頻率,階段式還是增量式 695
29.3 增量式集成策略 698
29.4 每日構(gòu)建和冒煙測試 707
第30 章 編程工具 715
30.1 設(shè)計工具 716
30.2 源代碼工具 716
30.3 可執(zhí)行碼工具 721
30.4 面向工具的環(huán)境 726
30.5 自己動手寫編程工具 726
30.6 工具的幻境 728
代碼大全2(紀(jì)念版) 作者簡介
史蒂夫·麥康奈爾(Steve McConnell) 屢獲殊榮的科技類暢銷書作家,他的兩部作品《代碼大全》和《快速軟件開發(fā)》被《軟件開發(fā)》雜志授予卓越產(chǎn)品震撼大獎,他的書被翻譯成30種語言,在全球范圍內(nèi)銷量超過一百萬冊。 史蒂夫熱衷于通過提高個人和團(tuán)隊的技能來提高軟件組織的績效。他是Construx Software公司的創(chuàng)始人兼首席執(zhí)行官,該公司提供培訓(xùn)、咨詢、輔導(dǎo)和免費資源,專注于更有效的軟件開發(fā)實踐。
- >
月亮虎
- >
自卑與超越
- >
有舍有得是人生
- >
名家?guī)阕x魯迅:故事新編
- >
煙與鏡
- >
詩經(jīng)-先民的歌唱
- >
羅庸西南聯(lián)大授課錄
- >
我與地壇