亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺談OOP在軟件開發(fā)中的應(yīng)用與優(yōu)勢

        2018-07-13 01:40:24
        軟件 2018年6期
        關(guān)鍵詞:子類面向?qū)ο?/a>數(shù)據(jù)結(jié)構(gòu)

        庾 佳

        (蘇州健雄職業(yè)技術(shù)學(xué)院,江蘇 太倉 215400)

        0 引言

        軟件開發(fā)人員在尋求問題的合格解決方案時(shí)通常會(huì)遵循某些軟件開發(fā)方法。這些解決方案作為計(jì)算機(jī)軟件來實(shí)現(xiàn)。

        1 軟件開發(fā)原則

        處理軟件復(fù)雜性的一種熟悉而且自然的方式是將系統(tǒng)劃分(或分解)為可管理的模塊(片段或組建)。將系統(tǒng)分解陳模塊由許多方式。有一些原則可以幫助我們獲得所期望的分解結(jié)果。

        1.1 模塊化和本地化

        軟件開發(fā)人員通過使用模塊化[3](modularity)原則來控制系統(tǒng)的復(fù)雜性。在系統(tǒng)開發(fā)的早期,系統(tǒng)被分解為一組模塊,這些模塊由過程和函數(shù)組成。通常,一種自上而下(top-down)的開發(fā)策略將系統(tǒng)不斷地分解為更小的模塊。一般而言,高層次模塊指定需要進(jìn)行什么操作,而低層次模塊則解決如何實(shí)現(xiàn)這些操作。圖1說明了將一個(gè)用于解決某個(gè)問題的系統(tǒng)進(jìn)行了層次化分解的示意圖。

        圖1 將系統(tǒng)分解成模塊Fig. 1 Decompose the system into modules

        1.2 抽象和信息隱藏

        解決問題人員通常使用抽象來處理系統(tǒng)的復(fù)雜性。使用抽象的重點(diǎn)在于定義系統(tǒng)的某個(gè)部分或組建,使得該組建能夠被看成是一個(gè)黑箱[5]。所有早期的編程語言都是通過子過程構(gòu)造(即過程和函數(shù))來支持都想,稱為過程抽象(procedural abstraction)。進(jìn)一些年來,面向?qū)ο笳Z言所推崇的OOP技術(shù),支持?jǐn)?shù)據(jù)抽象(data abstraction),其目的在于將每種數(shù)據(jù)結(jié)構(gòu)或?qū)ο罂醋魇怯蓴?shù)據(jù)屬性以及針對(duì)這些屬性的操作所組成。

        信息隱藏的目的在于使一些不會(huì)影響到系統(tǒng)中的其他模塊的細(xì)節(jié)不可訪問,這樣,數(shù)據(jù)類型和它的操作便組成了一個(gè)封閉的系統(tǒng)。其中的細(xì)節(jié)對(duì)于其他的模塊是隱藏的。

        1.3 松散耦合度和高內(nèi)聚度

        擁有一個(gè)松散耦合度的系統(tǒng)有兩個(gè)優(yōu)點(diǎn):第一,使用其他的模塊來替換某個(gè)模塊,這樣只有很少的模塊會(huì)受這一變化的影響;第二,追蹤某個(gè)錯(cuò)誤并隔離導(dǎo)致該錯(cuò)誤的有缺陷模塊。

        模塊的內(nèi)在強(qiáng)度——模塊各個(gè)部分的相關(guān)性有多強(qiáng)——稱為內(nèi)聚度。如果模塊的組成部分之間關(guān)聯(lián)性很強(qiáng),而且都與該模塊的用途和目的密切相關(guān),則稱該模塊具有很強(qiáng)的內(nèi)聚度,即高內(nèi)聚度。高內(nèi)聚是指一個(gè)軟件模塊是由相關(guān)性很強(qiáng)的代碼組成,只負(fù)責(zé)一項(xiàng)任務(wù),也就是常說的單一責(zé)任原則。

        2 面向?qū)ο蟪绦蛟O(shè)計(jì)(OOP)

        面向?qū)ο蟪绦蛟O(shè)計(jì)(Object Oriented Programming)方法簡稱 OOP方法[6-8],是一種把面向?qū)ο蟮乃枷霊?yīng)用于軟件開發(fā)過程中,指導(dǎo)開發(fā)活動(dòng)的系統(tǒng)方法。相比較傳統(tǒng)的開發(fā)方法,面向?qū)ο蟮某绦蛟O(shè)計(jì)方法采用了自底向上的歸納、自頂向下的分解的方法相結(jié)合,通過對(duì)對(duì)象模型的建立,能夠真正建立基于用戶的需求,而且系統(tǒng)的可維護(hù)性大大改善。它是歸納和演繹思想的綜合體現(xiàn),對(duì)于軟件設(shè)計(jì)起到了很好的作用。

        2.1 基本概念

        (1)對(duì)象:對(duì)象是人們要進(jìn)行研究的任何事物,從最簡單的整數(shù)到復(fù)雜的飛機(jī)等均可看作對(duì)象,它不僅能表示具體的事物,還能表示抽象的規(guī)則、計(jì)劃或事件。

        (2)對(duì)象的狀態(tài)和行為:對(duì)象具有狀態(tài),一個(gè)對(duì)象用數(shù)據(jù)值來描述它的狀態(tài)。對(duì)象還有操作,用于改變對(duì)象的狀態(tài),對(duì)象及其操作就是對(duì)象的行為。對(duì)象實(shí)現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作封裝于對(duì)象的統(tǒng)一體中。

        (3)類:具有相同或相似性質(zhì)的對(duì)象的抽象就是類。因此,對(duì)象的抽象是類,類的實(shí)體化就是對(duì)象。類具有屬性,它是對(duì)象的狀態(tài)的抽象,用數(shù)據(jù)結(jié)構(gòu)來描述類的屬性。 類具有操作,它是對(duì)象的行為的抽象,用操作名和實(shí)現(xiàn)該操作的方法來描述。

        (4)消息和方法:對(duì)象之間進(jìn)行通信的結(jié)構(gòu)叫做消息。在對(duì)象的操作中,當(dāng)一個(gè)消息發(fā)送給某個(gè)對(duì)象時(shí),消息包含接收對(duì)象去執(zhí)行某種操作的信息。類中操作的實(shí)現(xiàn)過程叫做方法,一個(gè)方法有方法名。

        2.2 特征

        (1)對(duì)象唯一性:每個(gè)對(duì)象都有自身唯一的標(biāo)識(shí),通過這種標(biāo)識(shí),可找到相應(yīng)的對(duì)象。 在對(duì)象的整個(gè)生命期中,它的標(biāo)識(shí)都不改變,不同的對(duì)象不能有相同的標(biāo)識(shí)。

        (2)繼承性:繼承性是子類自動(dòng)共享父類數(shù)據(jù)結(jié)構(gòu)和方法的機(jī)制,這是類之間的一種關(guān)系。 在類層次中,子類只繼承一個(gè)父類的數(shù)據(jù)結(jié)構(gòu)和方法,則稱為單重繼承。在類層次中,子類繼承了多個(gè)父類的數(shù)據(jù)結(jié)構(gòu)和方法,則稱為多重繼承。

        (3)多態(tài)性:多態(tài)性使指相同的操作或函數(shù)、過程可作用于多種類型的對(duì)象上并獲得不同的結(jié)果。

        3 OOP在軟件開發(fā)中的應(yīng)用

        所謂面向?qū)ο缶褪腔趯?duì)象概念,以對(duì)象為中心,以類和繼承為構(gòu)造機(jī)制,來認(rèn)識(shí)、 理解、刻畫客觀世界和設(shè)計(jì)、構(gòu)建相應(yīng)的軟件系統(tǒng)。

        3.1 OOP與建模

        建模是一個(gè)確定外部世界的某些特性或方面與某個(gè)特定問題或應(yīng)用相關(guān)的過程,是抽象的一種形式?;诒疚?1.2所提及的抽象形式,即過程抽象和數(shù)據(jù)抽象,在面向?qū)ο箝_發(fā)中,著眼點(diǎn)在于對(duì)象和他們之間的交互作用。

        OOP方法首先是確定對(duì)象的數(shù)據(jù),然后確定針對(duì)數(shù)據(jù)的操作。因此,對(duì)應(yīng)用進(jìn)行面向?qū)ο蠼5幕局埸c(diǎn)是確定顯示世界對(duì)象以及它們與應(yīng)用相關(guān)的交互作用。

        3.2 OOP在軟件開發(fā)中的優(yōu)勢

        (1)與人類的思維習(xí)慣一致:面向?qū)ο蟮乃季S方式是從人類考慮問題的角度出發(fā),把人類解決問題的思維過程轉(zhuǎn)變?yōu)槌绦蚰軌蚶斫獾倪^程。面向?qū)ο蟪绦蛟O(shè)計(jì)能夠讓我們使用“類”來模擬世界中的抽象概念,用“對(duì)象”來模擬現(xiàn)實(shí)世界中的實(shí)體,從而用計(jì)算機(jī)解決現(xiàn)實(shí)問題。

        (2)提高了程序的可重復(fù)性:一個(gè)類可以創(chuàng)建多個(gè)對(duì)象實(shí)例,增加了重用性。

        (3)易維護(hù):采用面向?qū)ο笏枷朐O(shè)計(jì)的結(jié)構(gòu),可讀性高,由于繼承的存在,即使改變需求,那么維護(hù)也只是在局部模塊,所以維護(hù)起來是非常方便和較低成本的。

        (4)質(zhì)量高[10]:在設(shè)計(jì)時(shí),可重用現(xiàn)有的,在以前的項(xiàng)目的領(lǐng)域中已被測試過的類使系統(tǒng)滿足業(yè)務(wù)需求并具有較高的質(zhì)量。

        (5)效率高:在軟件開發(fā)時(shí),根據(jù)設(shè)計(jì)的需要對(duì)現(xiàn)實(shí)世界的事物進(jìn)行抽象,產(chǎn)生類。使用這樣的方法解決問題,接近于日常生活和自然的思考方式,勢必提高軟件開發(fā)的效率和質(zhì)量。

        (6)易擴(kuò)展:由于繼承、封裝、多態(tài)的特性,自然設(shè)計(jì)出高內(nèi)聚、低耦合的系統(tǒng)結(jié)構(gòu),使得系統(tǒng)更靈活、更容易擴(kuò)展,而且成本較低。

        4 總結(jié)

        OOP面向?qū)ο蟮暮诵母拍钍欠庋b了屬性和方法的類,以數(shù)據(jù)為中心,實(shí)現(xiàn)了類級(jí)別的代碼重用,同時(shí)因?yàn)椴捎昧祟?,具有集成和多態(tài)特征,可以進(jìn)一步重用代碼和簡化編程。面向?qū)ο蟪绦蛟O(shè)計(jì)技術(shù)必將應(yīng)用到軟件設(shè)計(jì)中。

        猜你喜歡
        子類面向?qū)ο?/a>數(shù)據(jù)結(jié)構(gòu)
        卷入Hohlov算子的某解析雙單葉函數(shù)子類的系數(shù)估計(jì)
        面向?qū)ο蟮挠?jì)算機(jī)網(wǎng)絡(luò)設(shè)計(jì)軟件系統(tǒng)的開發(fā)
        電子測試(2018年15期)2018-09-26 06:01:34
        關(guān)于對(duì)稱共軛點(diǎn)的倒星象函數(shù)某些子類的系數(shù)估計(jì)
        面向?qū)ο蟮臄?shù)據(jù)交換協(xié)議研究與應(yīng)用
        “翻轉(zhuǎn)課堂”教學(xué)模式的探討——以《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)為例
        高職高專數(shù)據(jù)結(jié)構(gòu)教學(xué)改革探討
        中國市場(2016年45期)2016-05-17 05:15:48
        面向?qū)ο骔eb開發(fā)編程語言的的評(píng)估方法
        TRIZ理論在“數(shù)據(jù)結(jié)構(gòu)”多媒體教學(xué)中的應(yīng)用
        面向?qū)ο笮畔⑻崛≈杏跋穹指顓?shù)的選擇
        河南科技(2014年10期)2014-02-27 14:09:03
        《數(shù)據(jù)結(jié)構(gòu)》教學(xué)方法創(chuàng)新探討
        河南科技(2014年5期)2014-02-27 14:08:57
        99国产精品无码| 日本一区二区视频免费在线观看| av在线一区二区精品| 久久久国产精品ⅤA麻豆百度| 亚洲视频精品一区二区三区 | 777午夜精品免费观看| 日本www一道久久久免费榴莲| 亚洲国产成人aⅴ毛片大全| 久久熟女少妇一区二区三区| 成年人观看视频在线播放| 天天碰免费上传视频| 依依成人精品视频在线观看| 免青青草免费观看视频在线| 国产精品不卡免费版在线观看| 一本一道久久综合久久| 欧美多人片高潮野外做片黑人 | 综合无码一区二区三区四区五区| 国产主播一区二区在线观看| 亚洲精品天堂日本亚洲精品| 男人天堂网2017| 深夜福利啪啪片| 成人区人妻精品一熟女| 青青草视频华人绿色在线| 国产av一区二区内射| 日本中文一区二区在线| 日本高清视频永久网站www| 国产精品天天狠天天看| 99精品免费视频| 天堂av中文在线官网| 国产精品一区二区av不卡| 四虎影视成人永久免费观看视频 | 免费毛片视频网站| 日本熟妇hd8ex视频| 亚洲日本精品一区二区三区| 日韩精品人妻久久久一二三| 成在线人av免费无码高潮喷水| 中文字幕av免费专区| 国产在线网址| 男女午夜视频一区二区三区| 手机免费在线观看av网址| 午夜福利试看120秒体验区|