<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    設計模式群中的一個疑問

    設計模式群23998319。對設計模式不感興趣的勿擾。謝謝!。
    昨天新人報道,問了幾個問題。

    問:什么是設計模式?我一直以為做軟件只需要 語言+數據結構。
    有人這樣回答,我理解數據結構也是一種設計模式。
    不過這個我并不茍同。
    我所認為數據結構是面向最底層的,而設計模式是面向應用開發的一種策略。數據結構是解決的如何實現,而設計模式是在此實現上面向應用的一種開發策略。

    又問設計模式僅僅是針對復用? 
    回答:不是僅僅針對復用 擴展啦  還有測試等等,當時自己也就只能想到這些。


    提問者 設計模式有什么用?開始看到設計模式這四個字心里總想知道這個問題,不過當真的知道了,就會覺得問這個問題有點傻......(恨不得拿頭去撞墻......) 
     設計模式有什么用?設計模式說白了就是一種前人設計代碼或者說軟件總結出來的模板(很有用的)。我們學習它就是問了經驗復用。為了讓自己的代碼能更好的適應變化,提高程序的可維護性和可擴展性。學寫代碼就是這樣,就是用別人的經驗和權威的原則寫出能解決客戶需求的代碼,雖然創新思維是好東西,沒必要什么都自己來創造,不可以總結造電燈,自己造個編程語言再自己開發代碼。所以學習前者的經驗是我們的主流。
     我們是基于一些OOP是設計原則根據不同的需求通過不同的設計模式來到底所說的:更好的適應變化,提高程序的可維護性和可擴展性。 
     
    我答:可能你現在開發的軟件針對現在的形式是很適合的,但是當你要進行功能或行為上的擴展的話,松耦合的設計就可以使你不必修改多個類來,擴展功能了。其實現在的很多程序員并沒有真正的OO 。也包括我,都是針對要求去實現寫特定的類,所以我總認為,在編碼前面的建模還有分析是很重要的。 

    又問:建模就是建立"模式"? 
    答 這個“模”不是模式  是模型。就和建筑上的畫圖差不多 


    又問:模型就是指軟件的構造(結構)組成對吧?
    答:恩  還有構建之間的關系,消息通訊等。


     每一次的提問和回答都最自己的知識有所提高。讓我思考更多,比如在問什么是模型的時候,這個確實自己也吃不準。在以前的學習中并沒解釋過,是很虛幻的概念,可意會不可言傳的東西。按照我的理解就是通常建筑上開始時候的設計。

    posted on 2009-01-16 09:46 duduli 閱讀(1650) 評論(2)  編輯  收藏 所屬分類: 設計模式

    評論

    # re: 設計模式群中的一個疑問 2009-01-18 10:34 Daniel.Shi

    1.數據結構是“面向底層”的描述不準確,在具體分層架構中才有底層和上層,數據結構研究的是針對具體問題的算法,使用之處不存在“底層”之說。例如表現層也是需要使用數的算法的,對吧
    2. 模式:事物的標準樣式。模式就是從日常設計中總結出經典的模板,目的就是為了讓經典得以復用,不管是復用在什么場景下(設計、編碼、測試)。
    3. 模型除了對象結構外,還有關系和條件(限制)。
    4. 耦合是很“文”的叫法,說白了就是關系。松耦合,就是弱化關系,我的變化盡量少的影響到你。

    另外希望強調的是,所說的設計模式、建模,都是在說面向對象的設計模式、面向對象的建模,因為模式在面向對象成熟之前就已經產生,面向對象的發展實際就是從非面向對象語言上總結了很多的模式而來。ER建模是也建模,數據庫的模型依然是會涉及到(實際上一般即使用了ORM,也還要涉及ER模型)。建的模,是在特定技術領域中的模型。在數據庫技術上,即使你用OO建模,依然要轉換成數據庫模型、數據庫的語言——我們是受到平臺和技術的限制的。
    理論上,OO和模式是好的方向,但是實際過程中往往還是需求非OO(表現層語言)和反模式(涉及數據庫性能的時候)。不要盲目OO和模式至上,做到完全的面向接口,那么才是最高的境界。  回復  更多評論   

    # re: 設計模式群中的一個疑問 2009-01-18 13:14 nokiaguy

    設計模式實際上就是編程方式和習慣,是經驗的總結,這和生活習慣類似,如果擁有好的生活習慣,你就會很健康,在其他人眼里也會很好,而如果生活習慣不好,時間不顧慮,這當然沒什么問題(自我感覺良好),但可能會對自己的健康和其他的方面帶來影響(有時會很大)。
    設計模式也一樣,雖然不使用任何設計模式也可以寫任何的軟件,但是這就相當于沒有好的生活習慣一樣,會給這些系統帶來很大的麻煩,就象一個人的煙隱很大,長期下去,得肺癌的幾率要比不吸煙的人大得多。 而使用設計模式來實現軟件,就相當于擁有好的生活習慣,這樣會使整個軟件系統得到良性的發展。設計模式不是必須的,但擁有它使用生活變得更美好。  回復  更多評論   


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2009年1月>
    28293031123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    公告

    welcome to my place.

    常用鏈接

    留言簿(5)

    我參與的團隊

    隨筆分類

    隨筆檔案

    新聞分類

    石頭JAVA擺地攤兒

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    @duduli
    主站蜘蛛池模板: 亚洲美女aⅴ久久久91| 亚洲JIZZJIZZ中国少妇中文| 亚洲一区二区三区在线观看精品中文| 亚洲第一成人在线| 99久久这里只精品国产免费| 亚洲手机中文字幕| 国产香蕉免费精品视频| 久久丫精品国产亚洲av不卡 | 国产精品亚洲av色欲三区| 免费在线看v网址| 狠狠色香婷婷久久亚洲精品| 黄页网站免费在线观看| 亚洲午夜电影在线观看| 毛片视频免费观看| 亚洲av无一区二区三区| 免费人成网站在线播放| 中国精品一级毛片免费播放| 久久亚洲精品视频| 男人进去女人爽免费视频国产| 久久亚洲国产精品五月天| 3d成人免费动漫在线观看| 亚洲另类春色校园小说| 在线免费观看一级片| 四虎一区二区成人免费影院网址| 亚洲欧洲久久av| 免费精品一区二区三区第35 | 亚洲1234区乱码| 在线成人a毛片免费播放| 老司机午夜免费视频| 国产亚洲情侣一区二区无| 精品国产一区二区三区免费| 亚洲精彩视频在线观看| 午夜电影免费观看| jizz免费在线观看| 亚洲高清免费在线观看| 免费看a级黄色片| 国产VA免费精品高清在线| 亚洲综合自拍成人| 全免费A级毛片免费看网站| 美女网站在线观看视频免费的 | 84pao国产成视频免费播放|