最近這本『無瑕的程式碼』非常熱門!除了廣告打的兇之外(暢銷的書總是一開始就暢銷),重點在於作者和書的內容,Bob 大叔 (即Robert C. Martin) 也是另一本經典著作『敏捷軟體開發:原則、樣式及實務』的作者,不論你是否認同敏捷軟體開發 (Agile Software Development),只要是撰寫程式的軟體開發人員都要好好閱讀這本 Clean Code,因為我相信大家都會遇到這樣的事情:
公司急於讓產品完成上市,導致程式碼慢慢變得一團亂。加入越來越多的功能,程式碼越來越糟糕。每次修改程式也讓程式碼更加混亂、曲折及可怕,程式碼越來越龐大、艱深且複雜。
生產力漸漸降低,於是管理者想辦法招募更多新員工,由於新員工不知原始系統的設計,因而修改將破壞原本設計的原意,程式碼趨近崩解的邊緣。於是開發人員提出無法在現有設計上繼續開發下去,新的專案油然而生...持續陷入永無止境的迴圈之中,總是希望下一個軟體專案會更好。
這樣的問題到底出在哪裡?
Robert C. Martin 著,戴于晉、博碩文化編譯,無瑕的程式碼:敏捷軟體開發技巧守則,新北市:博碩文化,2013。
譯自:Clean Code: a handbook of agile software craftsmanship
作者 Martin 先生認為在於軟體開發人員(程式設計師)的態度,程式設計師沒有專業的把程式碼撰寫優良,導致劣質的程式碼慢慢腐蝕軟體的進度和品質,解決之道是『Clean Code』!
Bob 大叔將本書分成3大部分,第一部份(第1至第10章)說明什麼是無瑕的程式碼與 Clean Code 的原則、模式和實踐方式,第二部份(第11至第16章)則是以一些案例進行討論程式碼的清理 (clean)。最後第三部份(第17章)則是『程式碼氣味型錄』,記錄這本書中 Clean Code 的心得,這部份算是重點整理。(在序中沒有明確說明章節是第幾部分,這裏是看內容後自己劃分的)
整本書相當精彩,閱讀起來也相當舒適,可以感覺博碩文化出版的用心。書中提到博碩文化在這個『名家名著系列』 的願景,這裡不得不推崇一下出版社的堅持和貢獻,希望未來台灣與華人地區有更多經典著作的中文翻譯書籍。
###
搜尋此網誌
2013年4月8日 星期一
訂閱:
張貼留言 (Atom)
熱門文章
-
即時串流通信協定 ( Real Time Streaming Protocol , RTSP) 是應用層的通訊協定,定義在 RFC 2326 規範中,RTSP 是用來控制具有即時與同步特性的資料,如音訊和視訊的媒體,資料來源包含現場即時轉播和儲存的片段剪輯,媒體資料與控制資料是...
-
對於想接觸 電力電子 (Power Electronics) 這個領域的學生來說,會有不知道該如何著手的問題,我也遇過,總希望有人可以跟你講,這篇文章提供給大家參考,電力電子領域當中有幾本極為重要的 經典著作 (Classic) ,很多學校都是用這些書籍當作教科書,問題是如果...
-
形態學影像處理 (Morphological Image Processing),依據 Gonzalez與Woods的書本上說明\:影像處理的形態學是依據 數學形態學 ( Mathematical Morphology , MM)的應用之一,並且是以數學理論為運算的基礎(集合理論...
-
One picture is worth more than ten thousand words. (A picture is worth a thousand words.) 今天介紹 數位影像處理(Digital Image Processing) 的聖經,這本書是在...
-
今天跟大家介紹的不是什麼專業技術,而是健康知識!Why?因為 疱疹(Herpes) 這種疾病可能是工程師會得到的常見疾病,而且沒有藥可以治癒,唯一的解藥是你自己的免疫與抵抗力。病發原因主要是:熬夜、疲勞、壓力大、睡眠不足、抵抗力差時才會發生疱疹。(這不是現在RD的情形嗎...)...
-
談談 元件物件模型 ( Component Object Model, COM) 這個主題吧!前一陣子都在研究 DirectShow,常常看到 COM 這個關鍵字。由於最近才變成 Windows 程式開發人員所以不熟悉 COM,趁此機會好好研究一番吧! 請注意: COM 是一...
-
subprocess 是 Python 程式語言中用來新增子行程的模組,這是在 PEP 324 中所提出的建議,主要是統一 Python 新增子行程的方法,用來取代 os.system, os.spawn*, os.popen*, popen2.*, commands.* ...
-
起因於"大話設計模式"一書,我將重新學習 Design Pattern (設計模式)這項觀念,對於 資訊工程 類科的學生可能不陌生,但是對於一直都主修 電機工程 (Electrical Engineering, EE) 的我而言是不熟悉的觀念,雖然說現在 E...
-
人月神話之外,另一本軟體開發管理的經典著作! 與大家介紹一下這本「 約耳趣談軟體:來自專案管理的現場實錄 (Joel on Software) 」,當我買了之後閱讀,才發現所有的文章(不知道是不是全部)在網站上都有( Joel on Software Translation ...
-
NSIS (Nullsoft Scriptable Install System) 是一套建置 Windows 安裝程式 (installers) 的開源軟體,用來將程式或文件打包成一個執行檔給客戶安裝使用。NSIS 採用腳本 (Script) 的方式建置 Windows 安裝...
您好:
回覆刪除歡迎您來參加 HSDc 於 5/18 舉辦的 [HSDc. 讀書會] 無瑕的程式碼 (Clean Code)。
細節詳: http://www.hsdc.com.tw/course/reading_meeting_20130518