×
軟體預先架構之美學
作者: Ken Pugh
譯者:陳建勳
書號: A180
出版日: 2007/01/01
ISBN:9789867794703
附件: 無
定價: 580
電子書: 未出版
購買紙本書
內容特色
預構是利用經驗累積而得的洞察力,加以開發出新的解決方案。透過重構而獲得的專業知識也屬於這類經驗之一;而預購的詞源即來自於重構。重構是修改程式或軟體系統內部結構的實務作為,藉此改良其設計內容,同時保留其現有行為。重構的原因有很多種:簡化新增功能的過程、改良維護性、增加效能。

本書作者是經驗老道的軟體開發人員,書中作者運用他個人以及其他眾多開發人員的經驗,展示其推衍而得的實務以及各項方針。這些方針把優良開發人員在設計時,隱而未顯的考量細節如實呈現出來。許多方針都圍繞著極致抽象化、極致區隔以及極致可讀性這幾個概念旋轉。作者的方針透過假想軟體專案,以及實務專案的介紹而呈現出來,其中幾條方針羅列如下。

把作者的方針應用到你的軟體專案,有助於寫出更具可讀性以及維護性的程式。這些方針可以協助你事先做決策,減少事後重構的工作量。某種程度而言,你可以想得更遠,預測未來的修改,簡言之,就是預先架構你的程式,如此一來,更有生產力。

•抽象時,就徹底抽象
•整合小區塊要比拆卸大區塊容易
•把小事做好,就可能常受重用
•從大處規劃,從小處設計
•讓你的程式能傳達訊息
•最容易除錯的程式就是你沒寫的程式
•使用客戶的語言
•別讓冷空氣進來
•絕不沉默
•不要加速,除非你知道目的
作者介紹
Ken Pugh 是 Puge-Killen 協會主席之一。Ken 擔任顧問、從事教育訓練、教師、以及出庭提供證詞,涉足之科技領域有物件導向設計、Linux/Unix、網路、以及系統開發實務。他參予過的專案包括山羊血清流程控制、擔保抵押處理軟體、以及照片分類。Ken 時常在全國會議和區域會議發表演說,他的客戶從倫敦到雪梨都有。不工作時,他喜歡滑雪、衝浪、騎腳踏車、還有到阿帕拉契山徑健行。
章節目錄


第 1 章 預構簡介
何謂預構?
三個極致
探索方針
本書的情境

第 2 章 系統紀實
和 Sam 會談
避免重複發明
名詞裡有什麼?
碎塊 vs. 整塊
凝結成塊
抽象化
原型值千言

第 3 章 一般開發議題
從大藍圖開始
介面規範
查驗
程式傳達的訊息
一致性就是簡易性
預構的態度
不要自我重複
把假設和決策形諸文件
處理誤差和錯誤
速度
試算表謎題
工具只是工具——要善用

第 4 章 大藍圖
系統續論
過程
初始設計
從大處規劃,從小處設計
檢測功能
檢測品質
安全

第 5 章 撰寫類別
類型和類別
宣告 vs. 執行
適當的繼承
以文字通訊
不止一個

第 6 章 再談類別
光耀類別箴言
物件的三條定律
需求決定類別
多型
一件小差事
原則 vs. 實作
極致命名
函式的覆載

第 7 章 快完成了
我們在哪兒?
利害關係區隔
遷移至新系統

第 8 章 第一個版本
實踐見真章
回顧時間
系統實情
作業介面
抽象資料型態
組態
檢測
處理誤差和錯誤
預構一下
第一輪之初版
實務和理論偶爾不相吻合
剩餘的類別

第 9 章 關聯性和狀態
Sam 的新需求
以誰為主?
物件的狀態

第 10 章 介面和調整
型錄搜尋使用案例
設計介面
介面開發
介面檢測
介面切割
有東西能用

第 11 章 郵遞區號和介面
調整
把錢交出去
未寫的程式碼
間接性
記錄
形式互斥

第 12 章 更多的報表
花俏的報表
修改發生了
匯出

第 13 章 發票、信用卡、折扣
下一步
客戶的語言
安全和隱私

第 14 章 Sam 在擴張事業
第二家店
新的開發工作
第三家店
再見了,Sam
通用性

第 15 章 列印伺服器實例
簡介
系統
訊息
檢測
記錄
還可以再區隔一點
後記

第 16 章 反垃圾郵件實例
情境
檢查垃圾郵件
ReceivingMailServer 類別
ReceivedMailExaminer 類別
完整流程

第 17 章 後記

附錄 A 方針與原則

附錄 B 原始碼

索引
軟體預先架構之美學 分享
  • 作者: Ken Pugh
  • 書號:A180
  • ISBN:9789867794703
  • 出版日:2007/01/01
  • 定價:$ 580
  • 電子書:已出版
  • 購買紙本書

    內容特色
    預構是利用經驗累積而得的洞察力,加以開發出新的解決方案。透過重構而獲得的專業知識也屬於這類經驗之一;而預購的詞源即來自於重構。重構是修改程式或軟體系統內部結構的實務作為,藉此改良其設計內容,同時保留其現有行為。重構的原因有很多種:簡化新增功能的過程、改良維護性、增加效能。

    本書作者是經驗老道的軟體開發人員,書中作者運用他個人以及其他眾多開發人員的經驗,展示其推衍而得的實務以及各項方針。這些方針把優良開發人員在設計時,隱而未顯的考量細節如實呈現出來。許多方針都圍繞著極致抽象化、極致區隔以及極致可讀性這幾個概念旋轉。作者的方針透過假想軟體專案,以及實務專案的介紹而呈現出來,其中幾條方針羅列如下。

    把作者的方針應用到你的軟體專案,有助於寫出更具可讀性以及維護性的程式。這些方針可以協助你事先做決策,減少事後重構的工作量。某種程度而言,你可以想得更遠,預測未來的修改,簡言之,就是預先架構你的程式,如此一來,更有生產力。

    •抽象時,就徹底抽象
    •整合小區塊要比拆卸大區塊容易
    •把小事做好,就可能常受重用
    •從大處規劃,從小處設計
    •讓你的程式能傳達訊息
    •最容易除錯的程式就是你沒寫的程式
    •使用客戶的語言
    •別讓冷空氣進來
    •絕不沉默
    •不要加速,除非你知道目的
    作者介紹
    Ken Pugh 是 Puge-Killen 協會主席之一。Ken 擔任顧問、從事教育訓練、教師、以及出庭提供證詞,涉足之科技領域有物件導向設計、Linux/Unix、網路、以及系統開發實務。他參予過的專案包括山羊血清流程控制、擔保抵押處理軟體、以及照片分類。Ken 時常在全國會議和區域會議發表演說,他的客戶從倫敦到雪梨都有。不工作時,他喜歡滑雪、衝浪、騎腳踏車、還有到阿帕拉契山徑健行。
    章節目錄


    第 1 章 預構簡介
    何謂預構?
    三個極致
    探索方針
    本書的情境

    第 2 章 系統紀實
    和 Sam 會談
    避免重複發明
    名詞裡有什麼?
    碎塊 vs. 整塊
    凝結成塊
    抽象化
    原型值千言

    第 3 章 一般開發議題
    從大藍圖開始
    介面規範
    查驗
    程式傳達的訊息
    一致性就是簡易性
    預構的態度
    不要自我重複
    把假設和決策形諸文件
    處理誤差和錯誤
    速度
    試算表謎題
    工具只是工具——要善用

    第 4 章 大藍圖
    系統續論
    過程
    初始設計
    從大處規劃,從小處設計
    檢測功能
    檢測品質
    安全

    第 5 章 撰寫類別
    類型和類別
    宣告 vs. 執行
    適當的繼承
    以文字通訊
    不止一個

    第 6 章 再談類別
    光耀類別箴言
    物件的三條定律
    需求決定類別
    多型
    一件小差事
    原則 vs. 實作
    極致命名
    函式的覆載

    第 7 章 快完成了
    我們在哪兒?
    利害關係區隔
    遷移至新系統

    第 8 章 第一個版本
    實踐見真章
    回顧時間
    系統實情
    作業介面
    抽象資料型態
    組態
    檢測
    處理誤差和錯誤
    預構一下
    第一輪之初版
    實務和理論偶爾不相吻合
    剩餘的類別

    第 9 章 關聯性和狀態
    Sam 的新需求
    以誰為主?
    物件的狀態

    第 10 章 介面和調整
    型錄搜尋使用案例
    設計介面
    介面開發
    介面檢測
    介面切割
    有東西能用

    第 11 章 郵遞區號和介面
    調整
    把錢交出去
    未寫的程式碼
    間接性
    記錄
    形式互斥

    第 12 章 更多的報表
    花俏的報表
    修改發生了
    匯出

    第 13 章 發票、信用卡、折扣
    下一步
    客戶的語言
    安全和隱私

    第 14 章 Sam 在擴張事業
    第二家店
    新的開發工作
    第三家店
    再見了,Sam
    通用性

    第 15 章 列印伺服器實例
    簡介
    系統
    訊息
    檢測
    記錄
    還可以再區隔一點
    後記

    第 16 章 反垃圾郵件實例
    情境
    檢查垃圾郵件
    ReceivingMailServer 類別
    ReceivedMailExaminer 類別
    完整流程

    第 17 章 後記

    附錄 A 方針與原則

    附錄 B 原始碼

    索引