注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡軟件工程及軟件方法學軟件小設計

軟件小設計

軟件小設計

定 價:¥55.00

作 者: 董向陽
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 計算機/網(wǎng)絡 企業(yè)軟件開發(fā)與實施

ISBN: 9787121285387 出版時間: 2016-05-01 包裝: 平塑
開本: 頁數(shù): 300 字數(shù):  

內(nèi)容簡介

  本書從最基本編程理論開始,探討了軟件設計中的基本概念,比如過程、對象、封裝、繼承、多態(tài)等;然后,在理清這些概念的基礎上,書中集中探討了構(gòu)建好對象的若干原則;隨后,在這些思想和原則的基礎上,書中使用了大量的例子和篇幅分析了軟件設計過程中可能遇到的典型問題及可能的解決方案。最后,本書會嘗試脫離面向?qū)ο笤O計經(jīng)驗的束縛,直面設計的自然面貌:設計也許不輕松,但是也許并不那么的復雜。

作者簡介

  董向陽,上海梵訊網(wǎng)絡技術有限公司項目經(jīng)理,人們口中常說的“程序猿”,而且是高齡的(入行10年),.NET和Node.JS的鐵粉,模式和架構(gòu)愛好者,熱衷于收集各種編程新技術、新框架;對于大師們的設計方案,向來都是先鄙視之,然后再膜拜之;“空”是其最為信奉的座右銘。

圖書目錄

目錄第1章 設計概論 11.1 面向?qū)ο蟪绦蛟O計 11.1.1 面向?qū)ο笏枷搿味蕉} 11.1.2 面向?qū)ο笤O計原則——九陽神功 21.1.3 模式——乾坤大挪移 31.1.4 重構(gòu)——太極拳 41.1.5 抽象與組合——獨孤九劍 51.2 面向過程與面向?qū)ο?51.3 設計的宏觀面貌 81.3.1 開發(fā)模式:自頂向下和自底向上 81.3.2 開發(fā)方式:迭代 91.3.3 開發(fā)結(jié)果:模塊化 101.4 設計的微觀世界 101.4.1 函數(shù) 101.4.2 對象 121.5 小結(jié) 15第2章 設計原則 162.1 通用原則 162.1.1 KISS原則 162.1.2 代碼之“形” 172.2 核心原則 202.2.1 單一職責原則(SRP):做一個專一的人 202.2.2 開放封閉原則(OCP):改造世界大部分不是破壞原來的秩序 212.2.3 里氏替換原則(LSP):長大后,我就成了你 242.2.4 接口分離原則(ISP):不要一口吃成胖子 262.2.5 依賴倒置原則(DIP):抽象的藝術才有生命力 272.3 擴展原則 282.3.1 迪米特法則:盡量不與無關的類發(fā)生關系 282.3.2 好萊塢法則:不要調(diào)用我,讓我調(diào)用你 292.3.3 優(yōu)先使用組合原則:多使用組合,少使用繼承 312.4 小結(jié) 33第3章 設計過程 343.1 設計目標 353.1.1 對象設計目標——“高內(nèi)聚+低耦合” 353.1.2 對象設計過程——“折中+迭代+重構(gòu)” 363.2 對象來源 383.3 對象創(chuàng)建 413.3.1 直接創(chuàng)建對象 413.3.2 間接創(chuàng)建對象 443.3.3 對象創(chuàng)建時機 513.4 對象管理 573.4.1 線性結(jié)構(gòu)——集合對象 573.4.2 樹形組合結(jié)構(gòu) 653.5 對象交互 713.5.1 組合——直接引用,互通有無 713.5.2 中介者——間接通信 743.5.3 事件——使用回調(diào)函數(shù)通信 773.5.4 交互即耦合 843.6 對象存儲 843.6.1 文件存儲 853.6.2 數(shù)據(jù)庫存儲 943.7 訪問控制 1143.8 組織協(xié)作 1323.8.1 代碼的組織方式——“同步+異步+多線程” 1323.8.2 業(yè)務的組織方式 1383.9 對象布局 1553.9.1 進入業(yè)務邏輯系統(tǒng)的第一道門檻——“Controller” 1553.9.2 為什么要分層——分層的意義 1553.9.3 如何分層——價值導向 1563.9.4 層的對接——模塊化與面向接口編程 1713.9.5 接口的轉(zhuǎn)換——適配器 1723.9.6 接口的簡化——門面 1753.9.7 層的載體——包 1793.9.8 分層的代價——效率和復雜性 1803.9.9 層效率的有益補充 1803.10 應對變化 1833.10.1 變化的根源 1843.10.2 變化的種類 1843.10.3 處理變化的原則 1863.10.4 應對變化的設計思路 1893.11 小結(jié) 199第4章 模式 2004.1 模式定義 2004.2 模式的意義 2024.3 模式有缺點嗎 2034.4 設計的四個階段 2064.4.1 第一個階段:設計不足 2074.4.2 第二個階段:模仿設計 2084.4.3 第三個階段:過度設計 2084.4.4 第四個階段:適度設計 2134.5 反模式 2144.5.1 開發(fā)流程反模式 2144.5.2 數(shù)據(jù)庫設計反模式 2154.5.3 密碼管理反模式 2174.5.4 .NET開發(fā)反模式 2174.6 小結(jié) 220第5章 重構(gòu) 2215.1 重構(gòu)動機 2215.1.1 軟件代碼是會腐爛的 2225.1.2 破窗效應 2235.1.3 技術債務 2245.2 重構(gòu)的定義 2245.3 重構(gòu)難題 2245.3.1 技術上的難題 2255.3.2 管理上的難題 2255.3.3 個人難題——程序員心理學 2265.4 好代碼長什么樣 2265.5 重構(gòu)技法 2305.5.1 基本技法——重命名 2355.5.2 第一種技法——轉(zhuǎn)移職責 2375.5.3 第二種技法——封裝細節(jié) 2435.5.4 第三種技法——抽象對象 2545.6 重構(gòu)實施 2595.6.1 重構(gòu)的實施方式 2595.6.2 重構(gòu)的質(zhì)量 2615.7 小結(jié) 266第6章 回到起點 2676.1 忘掉模式 2676.2 忘掉對象 2696.3 回到起點 2766.3.1 設計原本 2776.3.2 設計的靜態(tài)性 2776.3.3 設計的動態(tài)性 289后記 292

本目錄推薦

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