日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

面向对象的软件工程应用浅研

發(fā)布時(shí)間:2024/9/20 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 面向对象的软件工程应用浅研 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
來(lái)源:http://www.biyelww.com/

  【摘要】隨著面向?qū)ο笱芯康牟粩嗌钊?#xff0c;面向?qū)ο蠹夹g(shù)的應(yīng)用越來(lái)越廣泛,面向?qū)ο蟮乃枷氡粦?yīng)用到許多不同的領(lǐng)域。在介紹軟件工程方法的基礎(chǔ)上分析了面向?qū)ο蟮能浖こ谭椒ǖ姆治黾夹g(shù)、設(shè)計(jì)及軟件開(kāi)發(fā)方法,從而說(shuō)明了面向?qū)ο蠹夹g(shù)貫穿于軟件開(kāi)發(fā)的全過(guò)程。
  【關(guān)鍵詞】軟件工程;面向?qū)ο?#xff1b;軟件開(kāi)發(fā)  1.軟件工程的定義  軟件工程是指導(dǎo)計(jì)算機(jī)軟件開(kāi)發(fā)和維護(hù)的工程學(xué)科 采用工程的概念、原理、技術(shù)、方法來(lái)開(kāi)發(fā)與維護(hù)軟件,把經(jīng)過(guò)時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方面結(jié)合起來(lái).經(jīng)濟(jì)地開(kāi)發(fā)出高質(zhì)量的 軟件并有效地維護(hù)它.這就是軟件工程軟件工程運(yùn)用計(jì)算機(jī)科學(xué)、數(shù)學(xué)及管理科學(xué)等原理.借鑒傳統(tǒng)工程的原則、方法,創(chuàng)建軟件以達(dá)到提高質(zhì)量、降低成本的目的 其中,計(jì)算機(jī)科學(xué)、數(shù)學(xué)用于構(gòu)造模型與算法,工程科學(xué)用于制造規(guī)范、評(píng)估成本及確定權(quán)衡,管理科學(xué)用于計(jì)劃、資源質(zhì)量、成本等管理。  2.軟件工程方法的流程  2.1軟件計(jì)劃
  在設(shè)計(jì)任務(wù)確立前.首先要進(jìn)行調(diào)研和可行性研究.理解工作范圍和所花費(fèi)的代價(jià).然后做出軟件計(jì)劃。
  2.2軟件需求分析
  對(duì)用戶要求進(jìn)行具體分析.確定用戶要求軟件系統(tǒng)做什么.并用軟件需求規(guī)格說(shuō)明書(shū)表達(dá)出來(lái).作為用戶和軟件人員之間共同的約定。
  2.3軟件設(shè)計(jì)
  根據(jù)需求說(shuō)明建立軟件系統(tǒng)的結(jié)構(gòu).包括數(shù)據(jù)結(jié)構(gòu)和模塊結(jié)構(gòu)。這部分又分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩個(gè)階段。
  2.4軟件編碼
  按軟件設(shè)計(jì)的要求為每個(gè)模塊編寫(xiě)程序。
  2.5軟件測(cè)試
  發(fā)現(xiàn)和排除程序中留存的錯(cuò)誤.經(jīng)過(guò)測(cè)試排錯(cuò).得到可交付運(yùn)行的軟件。軟件測(cè)試又分為單元測(cè)試和綜合測(cè)試兩個(gè)階段。
  2.6軟件維護(hù)
  經(jīng)過(guò)測(cè)試的軟件仍然可能有錯(cuò).另外 用戶的需求和系統(tǒng)的操作環(huán)境也可能發(fā)生變化,因此,交付運(yùn)行的軟件仍然需要繼續(xù)排錯(cuò)、修改和擴(kuò)充.這就是軟件的維護(hù)。 3.面向?qū)ο蟮能浖こ谭椒?/strong>  3.1面向?qū)ο蟮能浖こ谭椒ǖ亩x
  面向?qū)ο蠹夹g(shù)(OO)是一個(gè)非常實(shí)用而強(qiáng)有力的開(kāi)發(fā)方法。它是為了提高軟件系統(tǒng)的穩(wěn)定性、可修改性和可重用性創(chuàng)造出來(lái)的一種軟件工具,具有方法的唯一 性、高度連續(xù)性等特性,并把面向?qū)ο蠓治觥⒚嫦驅(qū)ο笤O(shè)計(jì)和面向?qū)ο缶幊碳傻杰浖嬷芷诘南鄳?yīng)階段面向?qū)ο蟮能浖こ?OOSE)自上至下、自始至終地 貫徹面向?qū)ο笏悸?#xff0c;可以用于系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、程序設(shè)計(jì).也可以用于其他環(huán)境的開(kāi)發(fā).如數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)等。
  3.2面向?qū)ο蟮能浖こ谭椒ǖ奶卣骱鸵c(diǎn)
  面向?qū)ο筌浖こ谭椒ǖ某霭l(fā)點(diǎn)和基本原則.是盡可能模擬人類(lèi)習(xí)慣的思維方式.使開(kāi)發(fā)軟件的方法與過(guò)程盡可能接近人類(lèi)認(rèn)識(shí)世界解決問(wèn)題的方法與過(guò)程.也 就是使描述問(wèn)題的問(wèn)題空間(也稱(chēng)為問(wèn)題域)與實(shí)現(xiàn)解法的空間(也稱(chēng)為求解域)在結(jié)構(gòu)上盡可能一致,因此,面向?qū)ο蠓椒ㄓ幸韵碌幕咎卣?#xff1a;
  (1)封裝性:對(duì)象是數(shù)據(jù)和有關(guān)操作的封裝體。
  (2)繼承性和類(lèi)比性:在對(duì)象繼承結(jié)構(gòu)上.下層對(duì)象繼承上層對(duì)象的特征屬性和操作。不同的對(duì)象具有某些相同的屬性時(shí).常常把它們歸并成一類(lèi)。
  (3)動(dòng)態(tài)連接性:對(duì)象和對(duì)象之間所具有的一種統(tǒng)一、方便、動(dòng)態(tài)地連接和傳遞消息的能力與機(jī)制 動(dòng)態(tài)連接性便于在概念上體現(xiàn)并行和分布式結(jié)構(gòu)。
  (4)易維護(hù)性:任何一個(gè)對(duì)象都是把如何實(shí)現(xiàn)對(duì)本對(duì)象功能的細(xì)節(jié)隱藏在該對(duì)象的內(nèi)部。這就增強(qiáng)了對(duì)象和整個(gè)系統(tǒng)的易維護(hù)性。
  概括地說(shuō).面向?qū)ο蠓椒ň哂邢率鏊膫€(gè)要點(diǎn):
  (1)把對(duì)象作為融合了數(shù)據(jù)及在數(shù)據(jù)上的操作行為的統(tǒng)一的軟件構(gòu)件。面向?qū)ο蟪绦蚴怯蓪?duì)象組成的.程序中任何元素都是對(duì)象.復(fù)雜對(duì)象由比較簡(jiǎn)單的對(duì)象組合而成。
  (2)把所有對(duì)象都劃分成類(lèi)。每個(gè)類(lèi)都定義了一組數(shù)據(jù)和一組操作,類(lèi)是對(duì)具有相同數(shù)據(jù)和相同操作的一組相似對(duì)象的定義。數(shù)據(jù)用于表示對(duì)象的靜態(tài)屬性.是對(duì)象的狀態(tài)信息 而施加于數(shù)據(jù)上的操作用于實(shí)現(xiàn)對(duì)象的動(dòng)態(tài)行為。
  (3)按照父類(lèi)(或稱(chēng)基類(lèi))與子類(lèi)(或稱(chēng)派生類(lèi))的關(guān)系,把若干個(gè)相關(guān)類(lèi)組成一個(gè)層次結(jié)構(gòu)的系統(tǒng)(也稱(chēng)類(lèi)等級(jí))。在類(lèi)等級(jí)中.下層派生類(lèi)自動(dòng)擁有上層基類(lèi)中定義的數(shù)據(jù)和操作.這種現(xiàn)象稱(chēng)為繼承。
  (4)對(duì)象彼此之間僅能通過(guò)發(fā)送消息互相聯(lián)系。對(duì)象與傳統(tǒng)數(shù)據(jù)有本質(zhì)的區(qū)別,它不是被動(dòng)地等待外界對(duì)它施加操作,相反,它是進(jìn)行處理的主體.必須向它發(fā)消息.請(qǐng)求它執(zhí)行它的某個(gè)操作以處理它的數(shù)據(jù).而不是從外界直接對(duì)它的數(shù)據(jù)進(jìn)行處理。
  3.3面向?qū)ο蠼?br />   為了更好地理解問(wèn)題.人們常常采用建立問(wèn)題模型的方法 通常.模型由一組圖示符號(hào)和組織這些符號(hào)的規(guī)則組成.利用它們來(lái)定義和描述問(wèn)題域中的術(shù)語(yǔ)和概念。更進(jìn)一步講.模型是一種思考工具.利用這種工具可以把知識(shí)規(guī)范地表示出來(lái)。
  用面向?qū)ο蠓椒ㄩ_(kāi)發(fā)軟件.通常需要建立三種形式的模型.它們分別是描述系統(tǒng)數(shù)據(jù)結(jié)構(gòu)的對(duì)象模型.描述系統(tǒng)控制結(jié)構(gòu)的動(dòng)態(tài)模型和描述系統(tǒng)功能的功能模 型、這三種模型都涉及數(shù)據(jù).控制和操作等共同的概念.只不過(guò)每種模型描述的側(cè)重點(diǎn)不同。這三種模型從三個(gè)不同但又密切相關(guān)的角度模擬目標(biāo)系統(tǒng).它們各自從 不同側(cè)面反映了系統(tǒng)的實(shí)質(zhì)性內(nèi)容.綜合起來(lái)則全面地反映了對(duì)目標(biāo)系統(tǒng)的需求3.4面向?qū)ο筌浖_(kāi)發(fā)方法的幾個(gè)階段實(shí)際上.用面向?qū)ο蠓椒ㄩ_(kāi)發(fā)軟件時(shí),階段 的劃分是十分模糊的.通常在分析、設(shè)計(jì)、實(shí)現(xiàn)等階段問(wèn)多次迭代。
  (1)面向?qū)ο蠓治觥C嫦驅(qū)ο蠓治?通常縮寫(xiě)為OOA).就是抽取和整理用戶需求并建立問(wèn)題域精確模型的過(guò)程。面向?qū)ο蠓治龅年P(guān)鍵,是識(shí)別出問(wèn)題域內(nèi) 的對(duì)象,并分析它們相互間的關(guān)系,最終建立起問(wèn)題域的簡(jiǎn)潔、精確、可理解的正確模型。在面向?qū)ο蠓治鲋?#xff0c;主要由對(duì)象模型、動(dòng)態(tài)模型和功能模型組成。在用面 向?qū)ο笥^點(diǎn)建立起的三種模型中.對(duì)象模型是最基本、最重要、最內(nèi)核的。
  (2)面向?qū)ο笤O(shè)計(jì) 從面向?qū)ο蠓治龅矫嫦驅(qū)ο笤O(shè)計(jì)(通常縮寫(xiě)為OOD)是一個(gè)逐漸擴(kuò)充的過(guò)程 或者說(shuō).面向?qū)ο笤O(shè)計(jì)就是用面向?qū)ο笥^點(diǎn)建立求解域模型的過(guò)程 面向?qū)ο笤O(shè)計(jì)可再細(xì)分為系統(tǒng)設(shè)計(jì)和對(duì)象設(shè)計(jì)。系統(tǒng)設(shè)計(jì)確定實(shí)現(xiàn)系統(tǒng)的策略和目標(biāo)系統(tǒng)的高層結(jié)構(gòu)。對(duì)象設(shè)計(jì)確定解空間中的類(lèi)、關(guān)聯(lián)、接口形式及實(shí)現(xiàn)服務(wù)的算 法。
  (3)面向?qū)ο髮?shí)現(xiàn)。面向?qū)ο髮?shí)現(xiàn)主要包括兩項(xiàng)工作:
  第一項(xiàng)工作是把面向?qū)ο笤O(shè)計(jì)結(jié)果.翻譯成用某種程序設(shè)計(jì)語(yǔ)言書(shū)寫(xiě)的面向?qū)ο蟪绦?通常此階段縮寫(xiě)為OOP);
  第二項(xiàng)工作是測(cè)試并調(diào)試面向?qū)ο蟮某绦颉C嫦驅(qū)ο蟪绦虻馁|(zhì)量基本上由面向?qū)ο笤O(shè)計(jì)的質(zhì)量決定.
  但是.所采用的程序設(shè)計(jì)語(yǔ)言的特點(diǎn)和程序設(shè)計(jì)風(fēng)格也將對(duì)程序的可靠性、可重用性和可維護(hù)性產(chǎn)生深遠(yuǎn)的影響。
  綜上所述.面向?qū)ο筌浖こ谭椒筛爬槿缦碌倪^(guò)程:分析用戶需求.從問(wèn)題中抽取對(duì)象模型:將模型細(xì)化,設(shè)計(jì)類(lèi)。包括類(lèi)的屬性和類(lèi)間相互關(guān)系.同時(shí)考 察是否有可以直接引用的已有類(lèi)或部件.選定一種面向?qū)ο蟮木幊陶Z(yǔ)言.具體編碼實(shí)現(xiàn)上一階段的設(shè)計(jì).并在開(kāi)發(fā)過(guò)程中引入測(cè)試,完善整個(gè)解決方案

總結(jié)

以上是生活随笔為你收集整理的面向对象的软件工程应用浅研的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。