天天看點

設計->限制

         适當的限制帶來更大的自由,通用的産品比專業的産品更難以設計。

         大學畢業設計的過程中,導師給了個他課題組的項目,但是沒有給定畢設題目,意思是讓我學習研究,看最後到了什麼程度,然後定題目,結果做了5個月,直到畢業答辯的前一周才定題目,過程中很是痛苦,因為不知道我能做到什麼程度,于是去翻看文獻,測試代碼,寫代碼,雖然收益很大,但是也是搞得很辛苦。

         當時做的事圖像融合,本來什麼方向都沒有,後來縮放到多聚焦圖像融合,研究的點就集中了,從圖像融合的幾個準則入手,很快就做了一些東西,算法設計完後,就是軟體設計,又沒有限制,考慮到時間不夠,就采用混合程式設計去實作了,不過對于軟體設計還是在表面上遊走,到了現在,如果我是導師,我一定會給學生一個建議,可以聽從,讓他自己選擇。

          在設計軟體之前,必需要先做一個預算,限制文檔。

          限制越多,實作設計也就越快,假設要設計一個上位機軟體,提出要求:

軟體平台:

1.vc6.0++  windows程式設計

2.單片機c52

3.ado資料庫通路

具體細節:

balabala.......

          如果一開始就定下基調,相信入手就非常明了,即使對于一個不懂程式設計的人,我相信一個月能實作簡單的要求。

          假如一開始就不做要求,要一個上位機軟體,去設計,vc ?  vb ? labview ? c# ?  java ?  什麼都可以去設計,但是不同的語言,都有自己的設計規格, 然後資料庫,sql ,oracle ,access,txt ,xml,都可以選擇,但是要選哪個,都是問題。

          接下來,認識限制:

時間+

空間+

人為+

時間-

不随時間變化而變化的限制

時間導緻的限制可以以空間來放寬

時間導緻的限制可以以人為來放寬

空間-

空間導緻的限制可以以時間來放寬

不随空間變化而變化的限制

空間間導緻的限制可以以人為來放寬

人為-

人為導緻的限制可以以時間來放寬

人為導緻的限制可以以空間來放寬

不随人為變化而變化的限制

     在設計軟體時,語言,資源,都隻是工具,重要是我們需要了解使用者需要什麼,客戶的要求包含的限制,一個好的架構和使用者模型好于用一門精緻的語言。

繼續閱讀