中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網(wǎng) 請 | 注冊

包郵 Python代碼整潔之道

出版社:清華大學出版社出版時間:2021-09-01
開本: 16開 頁數(shù): 296
中 圖 價:¥60.8(7.6折) 定價  ¥79.8 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>
買過本商品的人還買了

Python代碼整潔之道 版權(quán)信息

Python代碼整潔之道 本書特色

專業(yè)質(zhì)量的代碼不僅運行時沒有錯誤,而且整潔、易讀、易維護。想從一個有能力的Python程序員成長為專業(yè)的開發(fā)人員,讀者需要學習編碼風格、應(yīng)用程序設(shè)計和開發(fā)流程的行業(yè)標準。這正是本書的特色與要講解的內(nèi)容。 本書教會讀者設(shè)計和編寫可理解、可維護和可擴展的專業(yè)軟件。作者Dane Hillard是一位Python專業(yè)人士,幫助過許多開發(fā)人員完成Python項目的設(shè)計和編寫,他知道在此過程中需要做些什么。他通過有用的示例和練習,讓讀者明白在什么時機,如何將代碼模塊化,如何通過降低復雜度來提高代碼質(zhì)量,以及為什么這樣做等。遵循這些核心原則,所編寫的代碼將更易于自己和他人閱讀、維護和重用。

Python代碼整潔之道 內(nèi)容簡介

主要內(nèi)容 組織大型Python項目 實現(xiàn)合適的抽象級別 編寫整潔并可重用的代碼 繼承和組合 測試和性能的注意事項

Python代碼整潔之道 目錄

第Ⅰ部分 為什么學習Python


第1 章 Python 總覽 3


1.1 Python 是一種企業(yè)語言 5


1.1.1 時代在改變 5


1.1.2 我喜歡Python 的原因 5


1.2 Python 是一種教學語言 6


1.3 設(shè)計是一個過程 6


1.3.1 用戶體驗 8


1.3.2 你以前接觸過的情況 9


1.4 設(shè)計更好的軟件 10


1.4.1 軟件設(shè)計注意事項 10


1.4.2 “有機”增長的軟件 11


1.5 何時投資設(shè)計 13


1.6 新的開始 14


1.7 設(shè)計是平等的 15


1.8 如何使用本書 18


1.9 本章小結(jié) 19


第Ⅱ部分 設(shè)計基礎(chǔ)


第2 章 關(guān)注點分離 23


2.1 命名空間 24


2.1.1 命名空間和導入語句 25


2.1.2 導入的多重面紗 27


2.1.3 命名空間可避免沖突 29


2.2 Python 中的分離層級 31


2.2.1 函數(shù) 31


2.2.2 類 39


2.2.3 模塊 46


2.2.4 包 47


2.3 本章小結(jié) 49


第3 章 抽象和封裝 51


3.1 什么是抽象 51


3.1.1 “黑匣子” 52


3.1.2 抽象就像洋蔥 53


3.1.3 抽象即簡化 56


3.1.4 分解實現(xiàn)抽象 57


3.2 封裝 58


3.2.1 Python 中的封裝構(gòu)造 58


3.2.2 Python 中的私有變量 60


3.3 試一試 60


3.4 編程風格也是一種抽象 64


3.4.1 過程式編程 64


3.4.2 函數(shù)式編程 64


3.4.3 聲明式編程 66


3.5 類型、繼承和多態(tài)性 68


3.6 了解錯誤的抽象 70


3.6.1 方枘圓鑿 71


3.6.2 智者更智 71


3.7 本章小結(jié) 72


第4 章 設(shè)計高性能的代碼 73


4.1 穿越時空 74


4.1.1 復雜度有點復雜 74


4.1.2 時間復雜度 75


4.1.3 空間復雜度 79


4.2 性能與數(shù)據(jù)類型 81


4.2.1 常量時間的數(shù)據(jù)類型 81


4.2.2 線性時間的數(shù)據(jù)類型 82


4.2.3 在數(shù)據(jù)類型上操作的空間復雜度 82


4.3 讓它能夠運行,正確運行,快速運行 86


4.3.1 讓它運行 86


4.3.2 讓它正確運行 87


4.3.3 讓它快速運行 90


4.4 工具 91


4.4.1 timeit 模塊 92


4.4.2 CPU 性能分析 93


4.5 試一試 95


4.6 本章小結(jié) 96


第5 章 測試軟件 97


5.1 什么是軟件測試 98


5.1.1 軟件是否按照要求運行 98


5.1.2 功能測試剖析 99


5.2 功能測試方法 100


5.2.1 手動測試 100


5.2.2 自動化測試 101


5.2.3 驗收測試 101


5.2.4 單元測試 103


5.2.5 集成測試 105


5.2.6 測試金字塔 105


5.2.7 回歸測試 106


5.3 事實陳述 107


5.4 使用unittest 進行單元測試 108


5.4.1 使用unittest 測試組織 108


5.4.2 使用unittest 運行測試 109


5.4.3 使用unittest 編寫**個測試 109


5.4.4 使用unittest 編寫**個集成測試 113


5.4.5 測試替身 116


5.4.6 試一試 118


5.4.7 編寫有趣的測試 121


5.5 使用pytest測試 121


5.5.1 使用pytest 測試組織 122


5.5.2 把unittest測試轉(zhuǎn)換為pytest 123


5.6 超越功能測試 124


5.6.1 性能測試 124


5.6.2 負載測試 125


5.7 測試驅(qū)動開發(fā):入門 126


5.7.1 測試驅(qū)動開發(fā)是一種心態(tài) 126


5.7.2 測試驅(qū)動開發(fā)是一種哲學 126


5.8 本章小結(jié) 127


第Ⅲ部分 明確大型系統(tǒng)


第6 章 實踐中的關(guān)注點分離 131


6.1 命令行書簽應(yīng)用程序 132


6.2 踏上Bark 之旅 133


6.3 初始代碼結(jié)構(gòu) 134


6.3.1 持久層 136


6.3.2 業(yè)務(wù)邏輯層 148


6.3.3 表示層 153


6.4 本章小結(jié) 162


第7 章 可擴展性和靈活性 163


7.1 什么是可擴展的代碼 163


7.1.1 添加新行為 164


7.1.2 修改現(xiàn)有行為 167


7.1.3 松耦合 168


7.2 解決僵化性 170


7.2.1 放手:控制反轉(zhuǎn) 171


7.2.2 細節(jié)決定成敗:依賴接口 175


7.2.3 抵抗熵:穩(wěn)健性原則 176


7.3 擴展練習 177


7.4 本章小結(jié) 182


第8 章 有關(guān)繼承的規(guī)則(及例外) 183


8.1 過去編程中的繼承 183


8.1.1 銀彈 184


8.1.2 繼承的挑戰(zhàn) 184


8.2 當前編程中的繼承 186


8.2.1 繼承到底是為了什么 186


8.2.2 可替代性 188


8.2.3 繼承的理想用例 189


8.3 Python 中的繼承 192


8.3.1 類型檢查 192


8.3.2 超類訪問 193


8.3.3 多重繼承和方法解析順序 194


8.3.4 抽象基類 198


8.4 Bark 中的繼承和組合 201


8.4.1 重構(gòu)以使用抽象基類 201


8.4.2 對繼承工作進行*后的檢查 203


8.5 本章小結(jié) 204


第9 章 保持輕量級 205


9.1 類/函數(shù)/模塊應(yīng)該有多大 206


9.1.1 物理度量 206


9.1.2 單一職責 207


9.1.3 代碼的復雜度 207


9.2 分解復雜度 212


9.2.1 提取配置 212


9.2.2 提取函數(shù) 215


9.3 分解類 218


9.3.1 復雜度初始化 218


9.3.2 提取類和轉(zhuǎn)發(fā)調(diào)用 221


9.4 本章小結(jié) 226


第10 章 實現(xiàn)松耦合 227


10.1 定義耦合 227


10.1.1 結(jié)締組織 228


10.1.2 緊耦合 229


10.1.3 松耦合 232


10.2 識別耦合 235


10.2.1 依戀情結(jié) 235


10.2.2 散彈式修改 237


10.2.3 抽象泄漏 237


10.3 Bark 中的耦合 238


10.4 尋址耦合 241


10.4.1 用戶消息傳遞 241


10.4.2 書簽持久性· 245


10.4.3 試一試 246


10.5 本章小結(jié) 250


第Ⅳ部分 下一步學習什么


第11 章 全力以赴 253


11.1 現(xiàn)在怎么辦 253


11.1.1 制訂計劃 254


11.1.2 執(zhí)行計劃 256


11.1.3 跟蹤進度 257


11.2 設(shè)計模式 259


11.2.1 Python 設(shè)計模式的起伏 261


11.2.2 需要了解的術(shù)語 261


11.3 分布式系統(tǒng) 262


11.3.1 分布式系統(tǒng)中的故障模式 263


11.3.2 尋址應(yīng)用程序狀態(tài) 263


11.3.3 入門術(shù)語 264


11.4 進行Python深潛 264


11.4.1 Python 代碼樣式 264


11.4.2 語言特征是模式 265


11.4.3 入門術(shù)語 266


11.5 你已經(jīng)了解的內(nèi)容 266


11.5.1 開發(fā)人員的心得體會 267


11.5.2 即將完結(jié) 268


11.6 本章小結(jié) 269


附錄A 安裝Python 271


A.1 我應(yīng)該使用什么版本的Python 271


A.2 “系統(tǒng)”Python 272


A.3 安裝其他版本的Python 272


A.3.1 下載官方Python 272


A.3.2 使用Anaconda下載 274


A.4 驗證安裝 274


展開全部

Python代碼整潔之道 作者簡介

Dane Hillard是一位軟件工程師、Web開發(fā)人員和Python國際會議演講者,他感興趣的領(lǐng)域包括教育、生物技術(shù)和開源。Dane編寫專業(yè)的Python軟件已有10年。 Dane在密歇根大學獲得計算機工程學士學位,輔修數(shù)學。作為一名軟件工程師,Dane曾在SAIC(現(xiàn)為Leidos)從事情報研究和開發(fā)工作,在Compendia Bioscience(現(xiàn)已并入賽默飛世爾科技公司)從事個性化癌癥基因組學研究。Dane目前為ITHAKA的首席Web應(yīng)用程序開發(fā)人員,他主要專注于Python、Django的Web開發(fā),以及用于學術(shù)研究的前端技術(shù)。

商品評論(0條)
暫無評論……
書友推薦
編輯推薦
返回頂部
中圖網(wǎng)
在線客服
主站蜘蛛池模板: 插针变压器-家用电器变压器-工业空调变压器-CD型电抗器-余姚市中驰电器有限公司 | 防爆暖风机_防爆电暖器_防爆电暖风机_防爆电热油汀_南阳市中通智能科技集团有限公司 | 山东包装,山东印刷厂,济南印刷厂-济南富丽彩印刷有限公司 | 安徽成考网-安徽成人高考网| LED太阳能中国结|发光红灯笼|灯杆造型灯|节日灯|太阳能灯笼|LED路灯杆装饰造型灯-北京中海轩光电 | 北京包装设计_标志设计公司_包装设计公司-北京思逸品牌设计 | 特材真空腔体_哈氏合金/镍基合金/纯镍腔体-无锡国德机械制造有限公司 | 成都竞价托管_抖音代运营_网站建设_成都SEM外包-成都智网创联网络科技有限公司 | 全钢实验台,实验室工作台厂家-无锡市辰之航装饰材料有限公司 | 厦门ISO认证|厦门ISO9001认证|厦门ISO14001认证|厦门ISO45001认证-艾索咨询专注ISO认证行业 | 砂磨机_立式纳米砂磨机_实验室砂磨机-广州儒佳化工设备厂家 | 细砂提取机,隔膜板框泥浆污泥压滤机,螺旋洗砂机设备,轮式洗砂机械,机制砂,圆锥颚式反击式破碎机,振动筛,滚筒筛,喂料机- 上海重睿环保设备有限公司 | 废水处理-废气处理-工业废水处理-工业废气处理工程-深圳丰绿环保废气处理公司 | 杭州公司变更法人-代理记账收费价格-公司注销代办_杭州福道财务管理咨询有限公司 | 电力测功机,电涡流测功机,磁粉制动器,南通远辰曳引机测试台 | 蜘蛛车-高空作业平台-升降机-高空作业车租赁-臂式伸缩臂叉装车-登高车出租厂家 - 普雷斯特机械设备(北京)有限公司 | 超声波成孔成槽质量检测仪-压浆机-桥梁预应力智能张拉设备-上海硕冠检测设备有限公司 | 轴流风机-鼓风机-离心风机-散热风扇-罩极电机,生产厂家-首肯电子 | 扒渣机厂家_扒渣机价格_矿用扒渣机_铣挖机_撬毛台车_襄阳永力通扒渣机公司 | 环境模拟实验室_液体-气体控温机_气体控温箱_无锡双润冷却科技有限公司 | 湖南档案密集架,智能,物证,移动,价格-湖南档案密集架厂家 | 控显科技 - 工控一体机、工业显示器、工业平板电脑源头厂家 | 考试试题_试卷及答案_诗词单词成语 - 优易学 | 黄石妇科医院_黄石东方女子医院_黄石东方妇产医院怎么样 | 西安烟道厂家_排气道厂家_包立管厂家「陕西西安」推荐西安天宇烟道 | 干式变压器厂_干式变压器厂家_scb11/scb13/scb10/scb14/scb18干式变压器生产厂家-山东科锐变压器有限公司 | 金环宇|金环宇电线|金环宇电缆|金环宇电线电缆|深圳市金环宇电线电缆有限公司|金环宇电缆集团 | 泉州陶瓷pc砖_园林景观砖厂家_石英砖地铺石价格 _福建暴风石英砖 | 东风体检车厂家_公共卫生体检车_医院体检车_移动体检车-锦沅科贸 | 洗砂机械-球磨制砂机-洗沙制砂机械设备_青州冠诚重工机械有限公司 | 北京包装设计_标志设计公司_包装设计公司-北京思逸品牌设计 | 丹佛斯压力传感器,WISE温度传感器,WISE压力开关,丹佛斯温度开关-上海力笙工业设备有限公司 | 西门子代理商_西门子变频器总代理-翰粤百科 | 翅片管换热器「型号全」_厂家-淄博鑫科环保| 警用|治安|保安|不锈钢岗亭-售货亭价格-垃圾分类亭-移动厕所厂家-苏州灿宇建材 | 深圳美安可自动化设备有限公司,喷码机,定制喷码机,二维码喷码机,深圳喷码机,纸箱喷码机,东莞喷码机 UV喷码机,日期喷码机,鸡蛋喷码机,管芯喷码机,管内壁喷码机,喷码机厂家 | 广西资质代办_建筑资质代办_南宁资质代办理_新办、增项、升级-正明集团 | 齿式联轴器-弹性联轴器-联轴器厂家-江苏诺兴传动联轴器制造有限公司 | 药品仓库用除湿机-变电站用防爆空调-油漆房用防爆空调-杭州特奥环保科技有限公司 | 换链神器官网-友情链接交换、购买交易于一体的站长平台 | 房间温控器|LonWorks|海思|