2009年5月5日 星期二

Huan-Lin 學習筆記: 軟體設計方面的書籍

Huan-Lin 學習筆記: 軟體設計方面的書籍: "軟體設計方面的書籍
4/09/2009 08:06:00 下午 張貼者: Michael Tsai
分類: OOAD, 軟體開發

有位未具名的朋友在《物件導向分析設計與應用》書籍相關資訊的回應中問到:「還有什麼樣的書,類似這本,把關於IT設計的概念、方法、目的、應用等,都整理出來的好書。」在回覆時,寫著寫著覺得內容有點長了,於是拉出來自成一篇。
我第一個想到的是四人幫的《Design Patterns》。雖然手邊還有其他討論軟體設計的書籍,但每次我有設計方面的疑問時,都會先從這本書下手。名副其實的經典!這本書有中文版:《物件導向設計模式》,葉秉哲翻譯。書中的範例是以 C++ 撰寫,也許有些人會覺得不夠親切吧。

其他討論 design patterns 的書籍,我手邊有而且覺得不錯的:

* 深入淺出設計模式(Head First Design Patterns),蔡學鏞 譯。
無責評論:透過輕鬆詼諧的對話和圖片帶領讀者進入 design patterns 的世界,應該挺適合初學者。
* 敏捷軟體開發-原則、樣式及實務(Agile Software Development),林昆穎、吳京子 譯。
無責評論:Agile + Design Patterns + Case Study,我主要是看裡面的 OCP、DIP、ISP 等設計原則。

以上這些書籍所介紹的 design patterns,大都屬於比較通用的、一般目的的 patterns。另外還有一些書籍是針對特定問題領域或架構方面的 patterns,像是:

* Patterns of Enterprise Application Architecture
* Pattern-Oriented Software Architecture Volume 1: A System of Patterns
* Pattern-Oriented Software Architecture Volume 2: Patterns for Concurrent and Networked Objects
* Pattern-Oriented Software Architecture Volume 3: Patterns for Resource Management

這幾本書我自己並沒有全看過,只能說稍微瞄過一些。PoEAA 的作者是 Martin Fowler,其中收錄了許多企業級應用程式經常用到的 patterns。之所以列出 POSA 這三冊,是有一次我在隨便翻看時,才發現原來自己寫的一套軟體中用來解決某個複雜問題的方法,就是 POSA Volumn 1 中介紹的 Blackboard pattern;此外,《物件導向分析設計與應用》也有一個 case study 用到此模式。Volumn 2、3 的 patterns 可能就稍嫌冷門了些。

目前大概先想到這幾本,若有想到其他值得推薦的書籍再補上來。"

沒有留言:

張貼留言