注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)深入淺出面向?qū)ο蠓治雠c設(shè)計(中文版)

深入淺出面向?qū)ο蠓治雠c設(shè)計(中文版)

深入淺出面向?qū)ο蠓治雠c設(shè)計(中文版)

定 價:¥98.00

作 者: (美)麥克勞克林(Mclaughlin,B.D) 等著;OReilly Taiwan公司 編譯
出版社: 東南大學(xué)出版社
叢編項:
標(biāo) 簽: 軟件工程/開發(fā)項目管理

ISBN: 9787564114213 出版時間: 2009-01-01 包裝: 平裝
開本: 12開 頁數(shù): 589 字數(shù):  

內(nèi)容簡介

  你是否早已對市面上那些只有在成為專家以后讀起來才有感覺的OOA&D書籍感到厭倦?你可能早就聽說過OOA&D書籍能幫助你寫出偉大的軟件——讓老板高興、客戶滿意的軟件。但如何辦到呢?《深入淺出面向?qū)ο蠓治雠c設(shè)計》將告訴你如何分析、設(shè)計以及撰寫真正面向?qū)ο蟮能浖喝菀字赜谩⒑镁S護、可擴展的軟件;不再使你心碎的軟件;讓你增添新功能而不會破壞舊機制的軟件。在本書中,你將學(xué)到:使用諸如封裝(encapsulation)與委派(delegation)之類的OO原則建立靈活的應(yīng)用程序;使用開閉原則(Open-Closed Principle)與單一職責(zé)原則(Single-Responsibilitv Principle)提升程序的重用性;學(xué)習(xí)如何將OO原則、設(shè)計模式及各種開發(fā)方法通通整合到OOA&D項目的生命周期里;運用UML、用例及用例圖來確保所有利害關(guān)系人都能清楚地進行溝通,協(xié)助你交付正確的軟件,達到每個人的要求。

作者簡介

  Brett McLaughlin ,Brett McLaughlin是一位出色的吉他手,擅長于藍調(diào)布魯斯和爵士樂的演奏。同時,作為一位幫助人們更好地編寫程序的作家,McLaughlin為讀者奉獻了許多優(yōu)秀的作品和暢銷書籍。如《Java and XML》,《Java 5.0 Ti-ger:A Developers Notebook》,《Home Theater Hacks》等等。

圖書目錄

介紹
 誰適合讀這本書?
 我們知道你在想什么
 元認知
 讓你的腦袋順從你的方法
 讀我
 技術(shù)審閱團隊
 致謝
1 偉大軟件由此開始:良好應(yīng)用程序的基石
 永遠的搖滾樂!
 Rick的金光閃閃的新應(yīng)用程序
 什么是你要改變的第一件事?
 偉大軟件……
 偉大軟件的簡易三步驟
 先聚焦在功能性上
 測試驅(qū)動
 尋找問題
 分析
 運用基礎(chǔ)的OO原則
 設(shè)計一次,設(shè)計兩次
 改變你的應(yīng)用程序有多簡單?
 封裝變化之物
 委托
 最后的偉大軟件(就現(xiàn)在而言)
 OOA&D關(guān)系到編寫偉大軟件
 要點
2 給客戶所需之物:收集需求
 大顯身手的機會來了
 測試驅(qū)動
 不正確的使用(有一點)
 那么,需求究竟是什么?
 創(chuàng)建需求列表
 為錯誤作規(guī)劃
 替代路徑(alternate path)處理系統(tǒng)的疑:
?。ㄔ俅危┙榻B用例
 一個用例,三個部分
 按照用例檢查需求
 你的系統(tǒng)必須在真實世界里運作
 認識快樂路徑(Happy Path)
 OOA&D工具箱
3 山可移,此情永不渝……現(xiàn)在,情況有變:需求變更
 你是英雄!
犧牲品?
軟件分析與設(shè)計的不變真理
可選路徑?替換路徑?誰能分得清?
用例對你而言必須合理
從開始到完成:單一場景
替換路徑的真心話
完成需求列表
重復(fù)程序代碼,遜!
最后的測試驅(qū)動
寫下你自己的設(shè)計原則
OOA&D工具箱
4 將你的軟件帶進現(xiàn)實世界:分析
 一只狗,兩只狗,三只狗,四只狗……
 你的軟件有其情境
 識別問題
 規(guī)劃解法方案
 兩位程序員的故事
 委托繞道
 低耦合應(yīng)用程序的威力
 注意用例里的名詞
 從好分析到好類……
 類圖解析
 類圖不是一切
 要點
5 第一部分:諸行無?!己玫脑O(shè)計
 Rick的吉他事業(yè)蒸蒸日上
 抽象類
 類圖解析(再一次)
 UML小抄
 設(shè)計問題的警告
 通往偉大軟件的三步驟(重訪)
插曲:OO大災(zāi)難
5 第二部分:給你的軟件30分鐘的伸展操——靈活的軟件
 回到Rick的搜索工具
 仔細瞧瞧search()方法
 分析的好處
 類實際上關(guān)系到行為
 設(shè)計之死(決策)
 將壞的設(shè)計決策轉(zhuǎn)變成好的
 Rick的軟件中的“雙封裝”
 不要害怕犯錯及改變
 瞧!Rick的具有靈活性的應(yīng)用程序
 測試驅(qū)動Rick的設(shè)計良好的軟件
 改變Rick的軟件有多容易?
 變更容易性的大挑戰(zhàn)
 具有內(nèi)聚性的類善于處理好單一事情
 設(shè)計/內(nèi)聚力生命周期
 偉大的軟件通常就是“夠好的軟件”
 OOA&D工具箱
6 “我的名字是Art Vandelay”:解決真正的大問題
 解決大問題
關(guān)鍵在于你如何看待大問題
需求與用例是個好起點……
共同性與變化性
整理功能
功能與需求之間的“差別”
用例不總是幫你看出整體輪廓
用例圖
小小參與者
參與者也是人(好吧,不全然)
做一點領(lǐng)域分析吧
化整為零,個個擊破
別忘了真正的客戶是誰
何謂設(shè)計模式?
OO&D的威力(以及一些小常識)
 OOA&D工具箱
7 為混亂帶來次序:架構(gòu)
 感覺有點頭昏嗎?
 我們需要架構(gòu)
 從功能開始
 什么是架構(gòu)的意義?
 架構(gòu)三問
 減少風(fēng)險
 場景有助于減少風(fēng)險
 一次把焦點放在一個功能上
 架構(gòu)是你的設(shè)計結(jié)構(gòu)
 再訪共同性
 共同性分析:通往靈活軟件之路
 什么意思?問客戶吧。
 減少風(fēng)險有助于偉大軟件自
 要點
8 原創(chuàng)性被高估:設(shè)計原則
 設(shè)計原則大集合
 開關(guān)原則(OCP)
 OCP,一步一步來
 不自我重復(fù)原則(DRY)
 DRY完全關(guān)系到一個地方一個需求
 單一職責(zé)原則(SRP)
 找出多重職責(zé)
 從多重職責(zé)到單一職責(zé)
 Liskov替換原則(LSP)
 子類化的誤用:誤用繼承的案例研究
 LSP揭露繼承結(jié)構(gòu)所隱藏的問題
 子類型必須能替換其基類型
 違反LSP造成令人困惑的程序代碼
 將功能性委托給其他類
 使用組合將來自其他多個類的行為集合起來
 聚合:組合,但沒有突然的結(jié)束
 組合VS.聚合
 繼承只是選項之一
 要點
 OOA&D工具箱
9 軟件終究為客戶服務(wù):重復(fù)與測試
 你的工具箱滿了
 偉大軟件的編寫是迭代進行的
 更深入地迭代:兩種基本選擇
 功能驅(qū)動開發(fā)
 用例驅(qū)動開發(fā)
 兩種開發(fā)方式
 功能分析
 編寫測試場景
 測試驅(qū)動開發(fā)
 再探共同性
 強調(diào)共同性
 強調(diào)封裝
 比對你的測試與設(shè)計
 測試案例解析……
 向客戶證明
 到目前為止,我們一直在按契約編程
 按契約編程關(guān)乎信任
 防御性編程
將你的應(yīng)用程序分解成較小的功能塊
要點
OOA&D工具箱
10 組合在一起:OOA&D生命周期
 開發(fā)軟件,OOA&D風(fēng)格
 對象村旅游
 對象村地鐵線路圖
 功能列表
 用例反映使用性,功能反映功能性
 現(xiàn)在開始迭代
 仔細看看地鐵的表示
 使用或不使用Line類……那是個問題
 對象村地鐵的關(guān)注要點(Subway類)
 保護你的類(還有客戶的類)
 中場休息
 回歸需求階段……
 聚焦于程序代碼,然后聚焦于客戶
 迭代(iteration)讓問題比較容易
 路線看起來像什么?
 讓自己看看對象村!
 第三次迭代,有人要試試嗎?
 旅程未結(jié)束……
附錄1:本書遺珠
附錄2:歡迎光臨對象村

本目錄推薦

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