2012年8月11日 星期六

「軟體預先架構之美學」讀後感


        我雖然常常閱讀與『IT 技術』相關的書籍,但是我幾乎不太會在這個部落格發表這類書籍的筆記或心得。原因之一,是這種太過專業知識的書籍,不容易摘錄重點,也不容易有所謂的心得感想

        不過最近因為學新東西,比較多是在閱讀這類專業書籍,其中不乏一些好書,對於跟我相同工作性質或產業的人其實是可以推薦的。一方面避免這個部落格會因此空窗太久,陸續我也會把一些偏專業性質的書籍也分享上來。

        首先這本『軟體預先架構之美學』,其實我好幾年前就已經看完了。這兩天拿出來重翻,主要是因為下週我承諾公司同仁會舉辦一場訓練,教育初階工程師怎麼從單純的開發工作轉移到設計導向



        所謂好的開始是成功的一半,當我們開始打算動手做一些東西時,怎麼產生這『好的開始』,卻也是『萬事起頭難』的一步。怎麼做好的設計,絕對不是看完一本書就可以得到的技能,這既不是葵花寶典、也不是九陰真經。作者也心知肚明這一點,所以不斷在書中,講解完一個概念,就會用些生活化的例子反過來舉反證:過猶不及都是不好的

        設計的三大心法:極致「抽象化、區隔化、可讀化

        這三大心法書中會再拆解出許多原則。但是只是傳授教條其實和實務應用很難搭上邊的,所以本書用一個從無到有的專案,用故事情結來貫穿所有原則:山姆大叔的 CD 出租店

        原本只是地方性出租割草機的山姆大叔,發現人們在打理院子除草時,通常喜歡邊聽隨身聽邊除草,於是決定提供出租 CD 的加值服務,於是找來作者幫他開發一套 CD 出租管理系統。

        原本只是地方小店,沒想到故事安排山姆大叔的服務廣受歡迎,飛黃騰達。
  1. 於是小店面的單一系統,現金收租。
  2. 因應客戶的消費習慣,開始收取支票、信用卡、月結帳收款。
  3. 常客可以累積紅利點數和折扣優惠。
  4. 管理上需要更多統計報表。
  5. 不只是 CD,山姆想提供更多樣性的商品:DVD、漫畫書籍...。
  6. 擴張第二家店:山姆的兩間店?或一間店在兩個地方?
  7. 海外事業起飛:匯率、多語言。
        從以上的業務轉變,可以清楚明白如果山姆不是一直在打掉重做新系統,那設計這件事在整個演化過程就變得至關重要了。

        老外作者文筆總是幽默風趣,這是本可以用小說情結還看待與閱讀的『討論系統設計』專業書籍。故事中程式設計師(作者)和山姆大叔之間的對話常常令人噴飯發噱,想不笑都難,絕對適合打算在 IT 領域深耕的工程師品嘗閱讀。

沒有留言:

張貼留言