• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      淺談程序設(shè)計(jì)的方法

      2016-11-21 09:58:50喻梅
      商情 2016年39期
      關(guān)鍵詞:軟件開(kāi)發(fā)

      喻梅

      【摘要】通過(guò)淺析面向?qū)ο蠓椒ㄅc結(jié)構(gòu)化方法的比較,分析探討了結(jié)構(gòu)化方法和面向?qū)ο蠓椒ù嬖诘膯?wèn)題,在比較兩者內(nèi)在一致性和主要區(qū)別基礎(chǔ)上,提出在軟件開(kāi)發(fā)過(guò)程中應(yīng)結(jié)合面向?qū)ο蠓椒ㄅc結(jié)構(gòu)化方法。

      【關(guān)鍵詞】面向?qū)ο蠓椒?;結(jié)構(gòu)化方法;軟件開(kāi)發(fā)

      面向?qū)ο蠓椒ń鉀Q了傳統(tǒng)結(jié)構(gòu)化方法中問(wèn)題空間和解空間在結(jié)構(gòu)上不一致的問(wèn)題,避免了從分析和設(shè)計(jì)到軟件模塊結(jié)構(gòu)間的多次轉(zhuǎn)換過(guò)程,使開(kāi)發(fā)軟件變得簡(jiǎn)捷、高效、合理。

      一、面向?qū)ο蠓椒ㄅc結(jié)構(gòu)化方法的比較

      可以看出,面向?qū)ο蟮姆椒ɑ舅枷胧牵?對(duì)問(wèn)題空間進(jìn)行自然分割,以更接近人類(lèi)思維的方式建立問(wèn)題域模型,以便對(duì)客觀實(shí)體進(jìn)行結(jié)構(gòu)模擬和行為模擬,從而使設(shè)計(jì)出的軟件盡可能直接地描述現(xiàn)實(shí)世界,構(gòu)造出模塊化的,可重用的,維護(hù)性好的軟件,同時(shí)限定軟件的復(fù)雜性和降低開(kāi)發(fā)維護(hù)費(fèi)用。

      二、結(jié)構(gòu)化方法與面向?qū)ο蠓椒ǖ膬?nèi)在聯(lián)系

      二者在分解和抽象原則上一致,分解和抽象是軟件開(kāi)發(fā)中控制問(wèn)題復(fù)雜性的重要原則,面向?qū)ο蠓椒ㄅc結(jié)構(gòu)化方法在運(yùn)用分解和抽象原則上的要求是完全一致的;局部化和重用性設(shè)計(jì)上的一致,在結(jié)構(gòu)化方法中,局部化主要體現(xiàn)在代碼與數(shù)據(jù)的分隔化,即程序各部分除必要的信息交流外,彼此相互隔離而互不影響,而面向?qū)ο蠓椒▌t采用數(shù)據(jù)、代碼的封裝,即將數(shù)據(jù)、代碼和操作方法封裝成一個(gè)類(lèi)似“黑箱”的整體對(duì)象,提高了程序的可靠性和安全性,同時(shí)增強(qiáng)了系統(tǒng)的可維護(hù)性。

      三、結(jié)構(gòu)化方法與面向?qū)ο蠓椒ǖ膮^(qū)別

      (一)處理問(wèn)題時(shí)的出發(fā)點(diǎn)不同

      結(jié)構(gòu)化方法是強(qiáng)調(diào)過(guò)程抽象化和模塊化,以過(guò)程為中心構(gòu)造或處理客觀世界問(wèn)題的,它是一種面向過(guò)程的開(kāi)發(fā)方法;面向?qū)ο蠓椒◤?qiáng)調(diào)把問(wèn)題域的要領(lǐng)直接影射到對(duì)象及對(duì)象之間的接口上,是用符合人們通常的思維方式來(lái)處理客觀世界的問(wèn)題。

      (二)處理問(wèn)題的基本單位和層次邏輯關(guān)系不同

      結(jié)構(gòu)化方法把客觀世界的問(wèn)題抽象成計(jì)算機(jī)可以處理的過(guò)程,處理問(wèn)題的基本單位是能清晰表達(dá)過(guò)程的模塊,用模塊的層次結(jié)構(gòu)概括模塊或模塊間的關(guān)系和功能;面向?qū)ο蠓椒ㄊ怯糜?jì)算機(jī)邏輯來(lái)模擬客觀世界中的物理存在,以對(duì)象的集合類(lèi)作為處理問(wèn)題的基本單位,盡可能使計(jì)算機(jī)世界向客觀世界靠攏,以使問(wèn)題的處理更直截了當(dāng),面向?qū)ο蠓椒ㄊ怯妙?lèi)的層次結(jié)構(gòu)來(lái)體現(xiàn)類(lèi)之間的繼承和發(fā)展。

      (三)數(shù)據(jù)處理方式與控制程序方式不同

      結(jié)構(gòu)化方法是直接通過(guò)程序來(lái)處理數(shù)據(jù),處理完畢后即可顯示處理結(jié)果,在控制程序方式上是按照設(shè)計(jì)調(diào)用或返回程序不能自由導(dǎo)航,各模塊程序之間存在著控制與被控制的關(guān)系;面向?qū)ο蠓椒▽?shù)據(jù)與對(duì)應(yīng)的代碼封裝成一個(gè)整體,原則上其它對(duì)象不能直接修改其數(shù)據(jù),即對(duì)象的修改只能由自身的成員函數(shù)完成,控制程序方式上是通過(guò)“事件驅(qū)動(dòng)”來(lái)激活和運(yùn)行程序。

      (四)分析設(shè)計(jì)與編碼轉(zhuǎn)換方式不同

      結(jié)構(gòu)化方法強(qiáng)調(diào)分析、設(shè)計(jì)及編碼之間按規(guī)則進(jìn)行轉(zhuǎn)換,貫穿軟件生命周期的分析、設(shè)計(jì)及編碼之間實(shí)現(xiàn)的是一種有縫的連接;面向?qū)ο蠓椒◤姆治龅皆O(shè)計(jì)再到編碼則采用一致性的模型表示,貫穿軟件生命周期的分析、設(shè)計(jì)及編碼之間是一種平滑過(guò)程,即實(shí)現(xiàn)的是一種無(wú)縫連接。

      四、結(jié)構(gòu)化方法和面向?qū)ο蠓椒ǜ饔袃?yōu)缺點(diǎn)

      (一)從執(zhí)行效率來(lái)說(shuō)

      結(jié)構(gòu)化方法比面向?qū)ο蠓椒ǎa(chǎn)生的可執(zhí)行代碼更直接,更高。所以對(duì)于一些嵌入式的系統(tǒng),結(jié)構(gòu)化方法產(chǎn)生的系統(tǒng)更小,運(yùn)行效率更高。

      (二)從重用性方面來(lái)說(shuō)

      采用結(jié)構(gòu)化方法的系統(tǒng)難以修改和擴(kuò)充。結(jié)構(gòu)化分析與設(shè)計(jì)清楚定義了系統(tǒng)的接口,當(dāng)系統(tǒng)對(duì)外界接口發(fā)生變動(dòng)時(shí),往往造成系統(tǒng)結(jié)構(gòu)較大變動(dòng),難以擴(kuò)充新的功能接口。采用結(jié)構(gòu)化方法的系統(tǒng)可復(fù)用性較差。結(jié)構(gòu)化方法將數(shù)據(jù)和操作分離,導(dǎo)致一些可重用的軟件構(gòu)件在特定具體應(yīng)用環(huán)境才能應(yīng)用,降低了軟件的可重用性。面向?qū)ο蠓椒ň哂泻芎玫闹赜眯浴T谟龅筋?lèi)似的問(wèn)題,通過(guò)應(yīng)用了抽象繼承等技術(shù),來(lái)重用代碼。

      (三)從程序語(yǔ)言編譯器來(lái)說(shuō)

      面向?qū)ο蠓椒?,通過(guò)編譯器實(shí)現(xiàn)代碼的面向?qū)ο笮浴R簿褪拐f(shuō)經(jīng)過(guò)編譯器后,代碼會(huì)被翻譯為相對(duì)應(yīng)的結(jié)構(gòu)化代碼。所以要熟練開(kāi)發(fā),還要懂一定的結(jié)構(gòu)化方法做為基礎(chǔ)。

      (四)從掌握難度來(lái)說(shuō),面向?qū)ο蠓椒ū冉Y(jié)構(gòu)化對(duì)象方法復(fù)雜,難于理解

      面象對(duì)象方法的內(nèi)容廣,概念多,而且很多都是難于理解,做到精通更加不易。應(yīng)用面向?qū)ο蠓椒?,常常需要一種支持的分析,設(shè)計(jì)方法,如RUP 方法,敏捷方法等。這些知識(shí)抽象枯燥,難于掌握。面象對(duì)象方法要經(jīng)過(guò)長(zhǎng)期的開(kāi)發(fā)實(shí)踐才能很好的理解,掌握。相比之下,結(jié)構(gòu)化方法知識(shí)內(nèi)容少,容易上手。

      (五)從應(yīng)用的范圍看,結(jié)構(gòu)化方法適用于數(shù)據(jù)少而操作多的問(wèn)題

      實(shí)踐證明對(duì)于象操作系統(tǒng)這樣的以功能為主的系統(tǒng),結(jié)構(gòu)化方法比較適應(yīng)它。面向?qū)ο蠓椒ㄕ孟喾矗瑢?duì)于數(shù)據(jù)庫(kù),信息管理等以數(shù)據(jù)為主的而操作較少的系統(tǒng),用面向?qū)ο蠓椒枋鲆糜诮Y(jié)構(gòu)化方法。

      五、結(jié)語(yǔ)

      綜上所述,軟件開(kāi)發(fā)的目標(biāo)是以最小的代價(jià)開(kāi)發(fā)出滿足用戶需求的軟件。為此,根據(jù)系統(tǒng)的實(shí)際需求,分別針對(duì)具體情況選擇采用不同的設(shè)計(jì)方法,可以充分發(fā)揮面向?qū)ο笈c結(jié)構(gòu)化方法各自的優(yōu)勢(shì)。目前在大多數(shù)軟件系統(tǒng)的分析設(shè)計(jì)過(guò)程中,這兩者方法都兼而有之。

      猜你喜歡
      軟件開(kāi)發(fā)
      基于安卓平臺(tái)的移動(dòng)式教學(xué)模式研究
      數(shù)據(jù)庫(kù)測(cè)試技術(shù)在軟件開(kāi)發(fā)中的應(yīng)用
      嵌入式系統(tǒng)軟件開(kāi)發(fā)技術(shù)探析
      淺談分層技術(shù)在軟件開(kāi)發(fā)中的應(yīng)用
      Java軟件開(kāi)發(fā)問(wèn)題探究
      軟件開(kāi)發(fā)中JAVA編程語(yǔ)言的應(yīng)用
      信息安全環(huán)境下的計(jì)算機(jī)軟件開(kāi)發(fā)研究
      計(jì)算機(jī)軟件開(kāi)發(fā)中的分層技術(shù)運(yùn)用
      建模技術(shù)在軟件開(kāi)發(fā)中的應(yīng)用
      軟件開(kāi)發(fā)中數(shù)據(jù)庫(kù)設(shè)計(jì)理論的實(shí)踐
      交城县| 宁夏| 克山县| 杭锦后旗| 吴桥县| 四平市| 红原县| 乐安县| 三穗县| 格尔木市| 威远县| 裕民县| 始兴县| 临沭县| 宽甸| 石台县| 光山县| 平江县| 晋城| 江达县| 英超| 旬邑县| 会宁县| 津南区| 桐庐县| 永安市| 蚌埠市| 郯城县| 闻喜县| 合水县| 连城县| 日土县| 临海市| 封丘县| 呼和浩特市| 会理县| 宁安市| 阜南县| 准格尔旗| 河曲县| 离岛区|