設計先行,編碼在後

當晚,太太跟我交流要設計的工具很多東西沒想清楚,沒法寫代碼,方向感不強,於是我們花了些時間,把設計要點整理到紙上(請忽略這個廣告紙)

設計先行,編碼在後

因爲我知道,今晚不搞清楚這個事情,想看個電影都難咯,^_^

於是這篇文章,我花了些時間思考和寫出來,幾分鐘可以讀完。

設計先行

現實生活中房子,大多數開發商交樓的時候已經是帶裝修,業主索取設計圖紙,才能得知水電佈局,這個無可厚非;而對於整個小區,它是先呈現在設計規劃圖上,而不是建築工人想到什麼就建什麼,必須按照設計圖紙的要求來做,否則隨意性帶來的可能是災害。

那麼,軟件工程裏面對軟件開發的要求是怎樣的呢?

軟件開發必須要經過初步設計、詳細設計、編碼、測試4個步驟。這是軟件工程的智慧結晶。
不按照這些步驟進行軟件開發,那就不是軟件工程指導下的軟件開發,只是手工作坊式“寫代碼”。

兩種編程套路

編程開發兩種常見套路:
設計先行,編碼在後

十幾年前剛入行的時候,我就是邊開發、邊設計,出來的效果自己也不滿意,大概經歷一年後才意識到設計先行的重要,想清楚做什麼,總比不知道做什麼有更強的方向感。
設計先行,對於總體框架有把握,即便方向改變,也有信心去擁抱變化,做一些微調,甚至可以避免引入設計複雜度,可以發散思考許多點,但是最終要收回來,要考慮資源因素(時間、人力成本等等),先實現的簡單、清晰,可衡量的框架是怎樣的,清晰描繪出來就好了,哪怕先用TDD模式去驗證對或者錯。

當然,一個負責任的攻城獅相當靠譜和重要,比我清楚怎麼做得更好

by 隨筆,未經整理

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章