1、設計中的挑戰
設計是乙個險惡的問題2、關鍵的設計概念設計是個了無章法的過程。犯錯正式設計的關鍵所在,在初期比在編碼後犯錯要好得多;很難判斷何時才算是「足夠好」了
設計就是確定取捨和調整順序的過程
設計受到諸多限制
設計是不確定的
設計是乙個啟發式過程
設計是自然而然形成的。在不斷的設計評估、非正式討論、寫實驗**以及修改實驗**中演化和完善的
軟體的首要技術使命:管理複雜度理想的設計特徵:最小複雜度、易於維護、鬆散耦合、可擴充套件性、可重用性、高扇入、低扇出、可移植性
精簡性、層次性、標準技術設計的層次:軟體系統--分解為子系統或包--分解為類---分解成子程式--子程式內部的設計
3、設計構造塊:啟發式方法
找出現實世界中的物件,使用物件進行設計的步驟是:
1>辨識物件及其屬性2>定義客隊物件執行的操作
3>確定可以每個物件可以對其他物件進行的操作
4>確定物件的那些部分對其他物件可見
5>定義每個物件的介面
4、設計實踐
要點:1、軟體的首要技術使命就是管理複雜度。以簡單性作為努力目標的設計方案對此最有幫助。
2、簡單性可以通過兩種方式來獲取:一是減少在同一時間所關注的本質性複雜度的量,二是避免生成不必要的偶然的複雜度。
3、設計是一種啟發式的過程。固執於某一種單一方法會損害創新能力,從而損害你的程式。
4、好的設計都是迭代的。你嘗試設計的可能性越多,你的最終設計方案就會變得越好。
5、資訊隱藏是個非常有價值的概念。通過詢問「我該隱藏些什麼?」能夠解決很多困難的設計問題。
---------《**大全2》
第五章 軟體構建中的設計
5.1設計中的挑戰 設計就是把需求分析和編碼除錯連在一起的活動。險惡的問題就是那種只有通過解決或部分解決才能被明確的問題。設計是個了無章法的過程。設計就是確定取捨和調整順序的過程。設計受到諸多限制。設計是不確定的。設計是乙個啟發式過程。設計是自然而然形成的。5.2關鍵的設計概念 好的設計源於對一小批...
第五章 軟體構建中的設計
5.1 5.2 設計相關概念 一 理想設計的特徵 設計範疇內的特徵有 1 最小複雜度 設計應該簡單且易於理解。2 易於維護 3 鬆散耦合 合理抽象 封裝 資訊隱藏,設計出相互關聯盡可能少得類。4 可擴充套件性 5 可重用性 6 高扇入 讓大量的類使用某個給定的類 如工具類 7 低扇入 乙個類裡適量使...
第五章 軟體構建中的設計
軟體設計意味著去構思 創造或發明一套方案,把乙份計算機軟體的規格說明書轉變為可實際執行的軟體。設計就是把需求分析和編碼除錯連在一起的活動。設計是乙個險惡的問題 只有通過解決或部分解決才能被明確的問題。設計是個了無章法的過程 即使他能得出清爽的成果 設計就是確定取捨和調整順序的過程。設計受到諸多限制。...