Samuel's Weblog

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            7 隨筆 :: 2 文章 :: 9 評(píng)論 :: 0 Trackbacks
          在這里只是簡(jiǎn)單談?wù)勗O(shè)計(jì)的基本含意,拋磚引玉。
          設(shè)計(jì)的本質(zhì)就是把軟件的需求說(shuō)明轉(zhuǎn)變成可以運(yùn)行的程序的整個(gè)過(guò)程。設(shè)計(jì)是一種腦力勞動(dòng),或者說(shuō)是一個(gè)啟發(fā)過(guò)程。設(shè)計(jì)是一個(gè)復(fù)雜的過(guò)程,現(xiàn)在從幾個(gè)方面闡述它。
          設(shè)計(jì)可以表現(xiàn)在多層次上面,設(shè)計(jì)方法可以是自底向上或是自頂向下,在實(shí)際的工作中,這兩者結(jié)合使用,相輔相成。首先使用自頂向下的方法把軟件系統(tǒng)劃分成多個(gè)層次,再在每個(gè)層次上面自頂向下或自底向上推動(dòng)設(shè)計(jì)。層次從上到下通常表現(xiàn)為子系統(tǒng),然后是模塊,子程序,最后是內(nèi)部子程序。這里模塊和子程序的區(qū)別在于模快包含了一些子程序和相關(guān)的數(shù)據(jù),而子程序只是一些功能集合。
          在早期,大家都采用結(jié)構(gòu)化設(shè)計(jì),使用程序看起來(lái)更富邏輯性,直到面向?qū)ο?OO)方法的出現(xiàn)。OO是設(shè)計(jì)方法的高層發(fā)展,和結(jié)構(gòu)化設(shè)計(jì)并不矛盾。現(xiàn)在又有了面向方面(OA)發(fā)起了另一場(chǎng)革命,使設(shè)計(jì)方法更深入發(fā)展。這三種方法也不是互斥的,三者相互協(xié)作,大大提高了設(shè)計(jì)的質(zhì)量。
          設(shè)計(jì)過(guò)程是一個(gè)啟發(fā)的過(guò)程,非常復(fù)雜。多數(shù)情況下我們需要迭代多次才能達(dá)成最后的目標(biāo),還有一些是使用增量式開(kāi)發(fā)過(guò)程來(lái)完成設(shè)計(jì)。我推薦大家使用迭代,明確定義每次迭代的目標(biāo),這樣每一步都走得很踏實(shí)。迭代使我們逐步細(xì)化設(shè)計(jì),逼近最終產(chǎn)品,而且結(jié)果是容易驗(yàn)證的,整個(gè)過(guò)程是自信和愉快的。
          在這當(dāng)中還要提到一個(gè)通用的準(zhǔn)則:解決問(wèn)題的方法。遇到問(wèn)題時(shí),首先要問(wèn)自己這個(gè)問(wèn)題到底是什么(What)?搞清楚問(wèn)題的真正原因,然后再制定幾個(gè)方案并評(píng)估它們做出最后的選擇(How)。接著是實(shí)現(xiàn)你的方案,有了前面的準(zhǔn)備階段,這一步實(shí)在是簡(jiǎn)單到頂。最后你要去驗(yàn)證你的方案是否達(dá)到你的目的,這也很簡(jiǎn)單。
          什么樣的設(shè)計(jì)才算是優(yōu)秀呢?
          • 簡(jiǎn)單
          • 低耦合高內(nèi)聚
          • 易擴(kuò)展
          • 易移植
          • 易重用且重用度高
          • 標(biāo)準(zhǔn)化程度高

          符合這些條件的設(shè)計(jì)通常就是非常可靠的設(shè)計(jì)。

          posted on 2006-11-19 14:45 SamuelRay 閱讀(1445) 評(píng)論(1)  編輯  收藏

          評(píng)論

          # re: 關(guān)于設(shè)計(jì) 2006-11-19 15:46 NCindy
          這篇post當(dāng)作開(kāi)題吧,太泛泛而談了,基本上沒(méi)有實(shí)際內(nèi)容。  回復(fù)  更多評(píng)論
            


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 镇坪县| 金华市| 荣成市| 利辛县| 哈巴河县| 三门峡市| 荣昌县| 微山县| 高阳县| 宣恩县| 宽甸| 瑞安市| 望都县| 宝丰县| 来宾市| 虎林市| 扬州市| 安阳市| 郑州市| 宜良县| 正宁县| 阳曲县| 佛冈县| 民权县| 黄浦区| 潞城市| 融水| 两当县| 保靖县| 苍南县| 耿马| 广州市| 绍兴县| 陵水| 武鸣县| 仪征市| 富顺县| 汉阴县| 馆陶县| 讷河市| 修武县|