軟件架構

軟件架構 pdf epub mobi txt 電子書 下載2025

出版者:機械工業齣版社
作者:[印] 阿南德·巴拉錢德拉·皮萊 (Anand Balachandran Pillai)
出品人:
頁數:0
译者:李必信
出版時間:2018-3
價格:79.00元
裝幀:
isbn號碼:9787111590941
叢書系列:架構師書庫
圖書標籤:
  • Python
  • 架構設計
  • python
  • 架構
  • 黃哥
  • 英文讀書
  • 知乎
  • 電子版
  • 軟件架構
  • 架構設計
  • 軟件工程
  • 係統設計
  • 可擴展性
  • 可維護性
  • 性能優化
  • 設計模式
  • 微服務
  • 分布式係統
想要找書就要到 圖書目錄大全
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

軟件架構,可以說是為特定的應用軟件創建一個藍圖設計。軟件架構中存在兩大挑戰:首先,軟件架構與需求必須保持一緻,對尚未發現的需求或者發生演化的需求都是如此;其次,盡管常常發生架構實現的變更,但軟件架構與其對應的架構實現必須保持一緻。本書包含很多示例和用例,通過這種直觀的方法來幫助你獲取成為一名成功的軟件架構師所需的一切。本書將幫助你瞭解Python的來龍去脈,以便可以用Python來構建和設計高度可擴展的、健壯的、簡潔的、性能強大的應用程序。

作者簡介

Anand Balachandran Pillai是一名工程技術專傢,在軟件企業有18年以上的工作經曆,在産品工程、軟件設計、架構設計和相關研究方麵具有非常豐富的經驗。他曾獲得印度理工學院機械工程專業的學士學位。曾在Yahoo!、McAfee和Infosys等公司任職,擔任産品開發團隊的首席工程師。他的主要興趣在於軟件性能工程、高可擴展性架構、安全和開源社區等方麵。他也經常在Startups工作,擔任首席技術專傢或顧問。他還是班加羅爾Python用戶聯盟的奠基人和Python軟件協會(PSF)的會士。Anand現在是Yegii公司的首席架構師。

(評審人)Mike Driscoll從2006年開始使用Python。他喜歡寫一些關於Python的博客,見http://www.blog.pythonlibrary.org/。他曾閤著瞭《the Core Python refcard for DZone》一書,並參與瞭《Python 3 Object Oriented Programming》、《Python 2.6 Graphics Cookbook》、《Tkinter GUI Application Development Hotshot》的評審工作和其他幾本書的撰寫工作。他最近剛完成《Python 101》的編寫,目前正在寫作他的下一本書。

目錄資訊

譯者序
關於作者
關於評審人
前言
第1章 軟件架構原理 1
1.1 軟件架構定義 2
1.1.1 軟件架構與設計 2
1.1.2 軟件架構相關的幾個方麵 3
1.2 軟件架構的特徵 3
1.2.1 用架構來定義一種結構 3
1.2.2 由架構來挑選一組核心元素 4
1.2.3 由架構來捕獲早期的設計決策 4
1.2.4 由架構來管理利益相關者的需求 5
1.2.5 架構影響著組織結構 5
1.2.6 架構受到環境的影響 6
1.2.7 架構是對係統的文檔化 6
1.2.8 架構通常會遵循某個模式 7
1.3 軟件架構的重要性 7
1.4 係統架構與企業架構 8
1.5 架構的質量屬性 10
1.5.1 可修改性 11
1.5.2 可測試性 13
1.5.3 可擴展性 14
1.5.4 性能 15
1.5.5 可用性 16
1.5.6 安全性 17
1.5.7 可部署性 18
1.6 本章小結 19
第2章 編寫可修改可讀的代碼 20
2.1 什麼是可修改性 20
2.2 與可修改性相關的幾個方麵 20
2.3 理解可讀性 21
2.3.1 Python和可讀性 21
2.3.2 可讀性–反模式 22
2.4 增強可讀性的各種技術 24
2.4.1 文檔化代碼 24
2.4.2 遵守編碼和風格規範 30
2.4.3 審查和重構代碼 31
2.4.4 注釋代碼 31
2.5 可修改性的基礎——內聚和耦閤 32
2.5.1 測量內聚性和耦閤性 33
2.5.2 字符串和文本處理 35
2.6 探索提高可修改性的策略 37
2.6.1 提供顯式接口 37
2.6.2 減少雙嚮依賴 37
2.6.3 抽象齣公共服務 38
2.6.4 使用繼承技術 38
2.6.5 使用延遲綁定技術 42
2.7 度量——靜態分析工具 43
2.7.1 什麼是代碼壞味道 43
2.7.2 圈復雜度——McCabe度量 44
2.7.3 度量結果測試 45
2.7.4 運行靜態檢查器 47
2.8 重構代碼 53
2.8.1 降低復雜度 53
2.8.2 改善代碼壞味道 55
2.8.3 改善風格上和編碼上的問題 57
2.9 本章小結 57
第3章 可測試性——編寫可測試的代碼 58
3.1 理解可測試性 58
3.1.1 軟件可測試性及相關屬性 58
3.1.2 架構級的方方麵麵 59
3.1.3 策略 60
3.2 白盒測試原理 65
3.2.1 單元測試 65
3.2.2 操作中的單元測試 66
3.2.3 單元測試模塊nose2 69
3.2.4 用py.test進行測試 70
3.2.5 代碼覆蓋 72
3.2.6 仿製一些東西 74
3.2.7 文檔中的內聯測試——doctest 78
3.2.8 集成測試 81
3.2.9 測試自動化 83
3.3 測試驅動開發 84
3.4 有迴文的TDD 85
3.5 本章小結 90
第4章 好的性能就是迴報 92
4.1 什麼是性能 93
4.2 軟件性能工程 93
4.3 性能測試和度量工具 94
4.4 性能復雜度 95
4.5 度量性能 96
4.5.1 使用上下文管理器度量時間 97
4.5.2 使用timeit模塊來計時代碼 99
4.5.3 使用timeit度量代碼的性能 100
4.5.4 揭示時間復雜度——各種圖 102
4.5.5 使用timeit度量CPU時間 106
4.6 剖析 107
4.6.1 確定性剖析 107
4.6.2 使用cProfile和profile進行剖析 108
4.6.3 收集和報告統計數據 111
4.6.4 第三方剖析器 113
4.7 其他工具 119
4.7.1 objgraph 120
4.7.2 pympler 121
4.8 程序設計性能——數據結構 123
4.8.1 可變容器——鏈錶、字典和集閤 123
4.8.2 不可變容器——元組 124
4.8.3 高性能容器——集閤模塊 125
4.8.4 概率數據結構——布隆過濾器 131
4.9 本章小結 134
第5章 開發可擴展的應用 136
5.1 可擴展性和性能 137
5.2 並發性 139
5.2.1 並發性與並行性 140
5.2.2 Python中的並發性——多綫程機製 141
5.3 縮略圖産生器 141
5.3.1 縮略圖産生器——生産者/消費者架構 143
5.3.2 縮略圖産生器——使用鎖的資源約束 147
5.3.3 縮略圖産生器——使用信號量的資源約束 150
5.3.4 資源約束——信號量和鎖比較 153
5.3.5 縮略圖産生器——使用條件的URL速率控製器 153
5.4 多綫程機製——Python和GIL 160
5.4.1 Python中的並發性——多進程機製 160
5.4.2 質數檢查器 161
5.4.3 排序磁盤文件 163
5.5 多綫程與多進程比較 168
5.6 先入為主的與閤作的多任務處理 170
5.7 Python中的asyncio模塊 173
5.8 等待future對象——async和await 175
5.9 concurrent.future——高級並發處理 178
5.9.1 磁盤縮略圖産生器 179
5.9.2 並發選項——如何選擇? 181
5.10 並行處理庫 182
5.10.1 joblib 182
5.10.2 PyMP 183
5.10.3 fractals —— Mandelbrot集 184
5.11 Web擴展 189
5.11.1 擴展工作流——消息隊列和任務隊列 189
5.11.2 Celery —— 一種分布式任務隊列 190
5.11.3 在Web上使用Python服務——WSGI 194
5.12 可擴展架構 197
5.12.1 垂直可擴展架構 197
5.12.2 水平擴展架構 198
5.13 本章小結 201
第6章 安全性——編寫安全代碼 202
6.1 信息安全架構 202
6.2 安全編碼 203
· · · · · · (收起)

讀後感

評分

評分

評分

評分

評分

用戶評價

评分

Python還是適閤寫寫腳本,寫服務器就過於復雜瞭

评分

很一般,還是讀流暢的Python吧 20190505【在讀20181220

评分

不做評價

评分

第五章 第八章還可以,帶實例講解分析,關於安全性,模版%s被hack利用,也有點意思,其他都是總結比較淺

评分

瞭解一下python 工具箱裏有哪些東西

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 qciss.net All Rights Reserved. 小哈圖書下載中心 版权所有