注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)其他編程語言/工具Python高級(jí)編程

Python高級(jí)編程

Python高級(jí)編程

定 價(jià):¥45.00

作 者: (法)萊德 著,姚軍,夏海輪,王秀麗 譯
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 程序設(shè)計(jì)

ISBN: 9787115217035 出版時(shí)間: 2010-01-01 包裝: 平裝
開本: 16開 頁數(shù): 306 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  《Python高級(jí)編程》通過大量的實(shí)例,介紹了Python語言的最佳實(shí)踐和敏捷開發(fā)方法,并涉及整個(gè)軟件生命周期的高級(jí)主題,諸如持續(xù)集成、版本控制系統(tǒng)、包的發(fā)行和分發(fā)、開發(fā)模式、文檔編寫等?!禤ython高級(jí)編程》首先介紹如何設(shè)置最優(yōu)的開發(fā)環(huán)境,然后以Python敏捷開發(fā)方法為線索,闡述如何將已被驗(yàn)證的面向?qū)ο笤瓌t應(yīng)用到設(shè)計(jì)中。這些內(nèi)容為開發(fā)人員和項(xiàng)目管理人員提供了整個(gè)軟件工程中的許多高級(jí)概念以及專家級(jí)的建議,其中有些內(nèi)容的意義甚至超出了Python語言本身?!禤ython高級(jí)編程》針對(duì)具備一定Python基礎(chǔ)并希望通過在項(xiàng)目中應(yīng)用最佳實(shí)踐和新的開發(fā)技術(shù)來提升自己的Python開發(fā)人員。

作者簡(jiǎn)介

  Tarek Ziadé,是巴黎Ingeniweb公司的CTO,其工作方向?yàn)镻ython、Zope、Plone技術(shù)和質(zhì)量保證。他參與Zope社區(qū)已經(jīng)有5年了,并且曾經(jīng)為Zope自身貢獻(xiàn)過代碼。Tarek創(chuàng)建了Afpy,這是法國(guó)的Python用戶組,并且編寫了兩本法語的Python書籍。他還在諸如Solutions Linux、Pycon、OSCON和EuroPython等法國(guó)及國(guó)際會(huì)議上發(fā)表了許多演講,并且主持了許多課程。

圖書目錄

第1章 準(zhǔn)備工作 1
1.1 安裝Python 1
1.1.1 Python實(shí)現(xiàn)版本 2
1.1.2 在Linux環(huán)境下安裝 3
1.1.3 在Windows環(huán)境下安裝 5
1.1.4 在Mac OS X環(huán)境下安裝 8
1.2 Python命令行 9
1.2.1 定制交互式命令行 10
1.2.2 iPython:增強(qiáng)型命令行 11
1.3 安裝setuptools 12
1.3.1 工作原理 12
1.3.2 使用EasyInstall安裝setuptools 13
1.3.3 將MinGW整合到distutils中 15
1.4 工作環(huán)境 15
1.4.1 使用文本編輯器與輔助工具的組合 15
1.4.2 使用集成開發(fā)環(huán)境 19
1.5 小結(jié) 22
第2章 語法最佳實(shí)踐——低于類級(jí) 23
2.1 列表推導(dǎo) 24
2.2 迭代器和生成器 25
2.2.1 生成器 27
2.2.2 協(xié)同程序 31
2.2.3 生成器表達(dá)式 33
2.2.4 itertools模塊 34
2.3 裝飾器 37
2.3.1 如何編寫裝飾器 39
2.3.2 參數(shù)檢查 40
2.3.3 緩存 42
2.3.4 代理 45
2.3.5 上下文提供者 46
2.4 with和contextlib 47
2.4.1 contextlib模塊 49
2.4.2 上下文實(shí)例 50
2.5 小結(jié) 52
第3章 語法最佳實(shí)踐——類級(jí) 53
3.1 子類化內(nèi)建類型 53
3.2 訪問超類中的方法 55
3.2.1 理解Python的方法解析順序 56
3.2.2 super的缺陷 60
3.3 最佳實(shí)踐 63
3.4 描述符和屬性 64
3.4.1 描述符 65
3.4.2 屬性 71
3.5 槽 74
3.6 元編程 75
3.6.1 __new__方法 75
3.6.2 __metaclass__方法 77
3.7 小結(jié) 80
第4章 選擇好的名稱 81
4.1 PEP 8和命名最佳實(shí)踐 81
4.2 命名風(fēng)格 82
4.2.1 變量 82
4.2.2 函數(shù)和方法 86
4.2.3 屬性 88
4.2.4 類 89
4.2.5 模塊和包 89
4.3 命名指南 90
4.3.1 使用“has”或“is”前綴命名布爾元素 90
4.3.2 用復(fù)數(shù)形式命名序列元素 90
4.3.3 用顯式的名稱命名字典 90
4.3.4 避免通用名稱 91
4.3.5 避免現(xiàn)有名稱 91
4.4 參數(shù)最佳實(shí)踐 92
4.4.1 根據(jù)迭代設(shè)計(jì)構(gòu)建參數(shù) 92
4.4.2 信任參數(shù)和測(cè)試 93
4.4.3 小心使用*args和**kw魔法參數(shù) 94
4.5 類名 96
4.6 模塊和包名稱 96
4.7 使用API 97
4.7.1 跟蹤冗長(zhǎng) 97
4.7.2 構(gòu)建命名空間樹 98
4.7.3 分解代碼 100
4.7.4 使用Egg 101
4.7.5 使用deprecation過程 101
4.8 有用的工具 102
4.8.1 Pylint 103
4.8.2 CloneDigger 104
4.9 小結(jié) 105
第5章 編寫一個(gè)包 106
5.1 用于所有包的公共模式 106
5.2 基于模板的方法 118
5.2.1 Python Paste 118
5.2.2 創(chuàng)建模板 120
5.3 創(chuàng)建包模板 120
5.4 開發(fā)周期 125
5.5 小結(jié) 128
第6章 編寫一個(gè)應(yīng)用程序 129
6.1 Atomisator概述 129
6.2 整體描述 130
6.3 工作環(huán)境 131
6.3.1 添加一個(gè)測(cè)試運(yùn)行程序 133
6.3.2 添加一個(gè)包結(jié)構(gòu) 133
6.4 編寫各個(gè)包 134
6.4.1 atomisator.parser 134
6.4.2 atomisator.db 139
6.4.3 atomisator.feed 143
6.4.4 atomisator.main 145
6.5 分發(fā)Atomisator 147
6.6 包之間的依賴性 148
6.7 小結(jié) 149
第7章 使用zc.buildout 150
7.1 zc.buildout原理 151
7.1.1 配置文件結(jié)構(gòu) 151
7.1.2 buildout命令 152
7.1.3 recipe 154
7.1.4 Atomisator buildout環(huán)境 157
7.1.5 更進(jìn)一步 158
7.2 發(fā)行與分發(fā) 159
7.2.1 發(fā)行包 160
7.2.2 添加一個(gè)發(fā)行配置文件 160
7.2.3 構(gòu)建和發(fā)行應(yīng)用程序 161
7.3 小結(jié) 162
第8章 代碼管理 163
8.1 版本控制系統(tǒng) 163
8.1.1 集中式系統(tǒng) 163
8.1.2 分布式系統(tǒng) 165
8.1.3 集中還是分布 167
8.1.4 Mercurial 167
8.1.5 使用Mercurial進(jìn)行項(xiàng)目管理 171
8.2 持續(xù)集成 178
8.3 小結(jié) 183
第9章 生命周期管理 184
9.1 不同的方法 184
9.1.1 瀑布開發(fā)模型 184
9.1.2 螺旋開發(fā)模型 185
9.1.3 迭代開發(fā)模型 185
9.2 定義生命周期 187
9.2.1 計(jì)劃 188
9.2.2 開發(fā) 188
9.2.3 整體調(diào)試 188
9.2.4 發(fā)行 188
9.3 建立一個(gè)跟蹤系統(tǒng) 189
9.3.1 Trac 189
9.3.2 使用Trac管理項(xiàng)目生命周期 194
9.4 小結(jié) 196
第10章 編寫項(xiàng)目文檔 197
10.1 技術(shù)性寫作的7條規(guī)則 197
10.1.1 分兩步編寫 198
10.1.2 以讀者為目標(biāo) 199
10.1.3 使用簡(jiǎn)單的風(fēng)格 199
10.1.4 限制信息的范圍 200
10.1.5 使用真實(shí)的代碼示例 200
10.1.6 保持簡(jiǎn)單,夠用即可 201
10.1.7 使用模板 202
10.2 reStructuredText入門 202
10.2.1 小節(jié)結(jié)構(gòu) 204
10.2.2 列表 205
10.2.3 內(nèi)聯(lián)標(biāo)簽 205
10.2.4 文字塊 206
10.2.5 鏈接 206
10.3 構(gòu)建文檔 207
10.4 建立自己的工件集 214
10.5 小結(jié) 220
第11章 測(cè)試驅(qū)動(dòng)開發(fā) 221
11.1 我不測(cè)試 221
11.1.1 測(cè)試驅(qū)動(dòng)開發(fā)原理 221
11.1.2 哪一類測(cè)試 225
11.2 我測(cè)試 229
11.2.1 Unittest的缺陷 229
11.2.2 Unittest替代品 230
11.2.3 仿真和模擬 236
11.2.4 文檔驅(qū)動(dòng)開發(fā) 240
11.3 小結(jié) 242
第12章 優(yōu)化:通用原則和剖析技術(shù) 243
12.1 優(yōu)化的3條規(guī)則 243
12.1.1 首先使它能夠正常工作 243
12.1.2 從用戶的觀點(diǎn)進(jìn)行 244
12.1.3 保持代碼易讀(從而易于維護(hù)) 245
12.2 優(yōu)化策略 245
12.2.1 尋找其他原因 245
12.2.2 度量硬件 246
12.2.3 編寫速度測(cè)試 246
12.3 查找瓶頸 247
12.3.1 剖析CPU的使用情況 247
12.3.2 剖析內(nèi)存使用情況 256
12.3.3 剖析網(wǎng)絡(luò)使用情況 262
12.4 小結(jié) 263
第13章 優(yōu)化:解決方案 264
13.1 降低復(fù)雜度 265
13.1.1 測(cè)量回路復(fù)雜度 265
13.1.2 測(cè)量大O記號(hào) 265
13.1.3 簡(jiǎn)化 268
13.2 多線程 274
13.2.1 什么是多線程 274
13.2.2 Python處理線程的方式 274
13.2.3 什么時(shí)候應(yīng)該使用線程 275
13.3 多進(jìn)程 280
13.4 緩存 284
13.4.1 確定性緩存 284
13.4.2 非確定性緩沖 287
13.4.3 主動(dòng)式緩沖 288
13.5 小結(jié) 289
第14章 有用的設(shè)計(jì)模式 290
14.1 創(chuàng)建型模式 290
14.2 結(jié)構(gòu)型模式 293
14.3 行為型模式 299
14.3.1 觀察者 299
14.3.2 訪問者 301
14.3.3 模板 304
14.4 小結(jié) 306

本目錄推薦

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