| 懶姑娘:如何成為一個優秀的程序員(二) |
| 送交者: 懶姑娘 2010年02月25日05:50:43 於 [教育學術] 發送悄悄話 |
|
剪不斷,理還亂
進入編碼之前,程序 員要作一件重要的事情:設計程序的整體構架:也就是將現實世界的具體需求,轉換成計算機語言中的各種模塊關係,即我們程序員常說的建模.程序的結構是否合 理十分重要,它往往決定了程序的好壞.不合理的程序結構最終將導致整個程序成為剪不斷,理還亂的一堆亂麻. 那麼什麼樣的程序結構才能算合理呢?這當然和程序所要完成的任務直接相關,很難作一刀切的定義.但是我認為萬變不離其宗,有幾條原則: 1 每個模塊的屬性有清楚的定義. 2 模塊之間的關係要簡單有邏輯. 3 儘量避免模塊之間的循環關係. 建 模工作確實十分重要,軟件工業界也推出了很多建模工具,比如UML,OMT等等.但在實際的軟件開發工作中,我發現不少程序員有過度誇大建模重要性的傾 向,花大量的時間紙上談兵,結果反而使得開發工作陷入困境.我就曾遇到一個這樣的例子.我有位同事,當時他負責一個為期六個月的項目.可是三個月後,他還在忙着畫他的UML圖.一個字的編碼都沒有寫.按照他的話來說:要想程序在十年之後還有可運用性,必須花足夠的精力讓程序結構富有彈性,也就是說,我們比須預想到未來的十年中,我們可能會遇到各種新需求.本來很簡單的一個問題,被他這一弄,變得極其複雜. 這種建模理論,在我看來是極其不現實的 首先,人類思維的局限性使得我們不可能預見未來的所有需求. 其次,模型越複雜,開發出來的程序問題也會越多. 最後,軟件的開發應該是一個動態的發展過程,最初構建的模型如果有什麼不足,可以在開發過程根據需要不斷修改.就好像我們不可能要求孩子一出身就具有成人的骨骼一樣. 因 此我認為,開發軟件需要建模.但是建模不應該成為軟件設計中的一個僵硬的單獨的板塊.它應該是貫穿在整個開發過程中.而且,它必須和實際編碼結合起來.很 多問題只有在寫編碼的過程中才能發現.在軟件的結構設計中應該始終秉承這樣一個宗旨:我選擇目前看來最簡單的,最有效的程序結構. 佛教中人常說:世上本無事,庸人自擾之.簡單永遠是最好的.誰要想一口氣吃成個大胖子,他得到的只能是"剪不斷理還亂,是離愁,別是一般滋味在心頭." |
|
![]() |
![]() |
| 實用資訊 | |
|
|
| 一周點擊熱帖 | 更多>> |
| 一周回復熱帖 |
| 歷史上的今天:回復熱帖 |
| 2009: | 請教定理:廣東諸方言的語調加起來得超 | |
| 2009: | 兩個中國女人 | |
| 2008: | 為什麼說《易經》是嚴重傷害中國人大腦 | |
| 2008: | 何祚庥:一個忠實於科學的科學家 | |
| 2005: | 國民黨的轉變: 台灣政黨政治之發展經驗 | |
| 2005: | 2004年度中國最具影響力100人 | |




