国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

關(guān)于計(jì)算機(jī)編程思想與AOP編程思想的研究

2015-11-17 11:51:31樓程偉陳麗紅
電腦知識(shí)與技術(shù) 2015年24期

樓程偉 陳麗紅

摘要:為了進(jìn)一步拓展AOP,即面向切面編程在程序設(shè)計(jì)和軟件開發(fā)中的應(yīng)用范圍,該文通過對(duì)計(jì)算機(jī)編程思想進(jìn)行研究,在結(jié)合計(jì)算機(jī)相關(guān)語言和應(yīng)用環(huán)境的基礎(chǔ)上,對(duì)結(jié)構(gòu)化程序設(shè)計(jì)與面向?qū)ο蟪绦蛟O(shè)計(jì)做出對(duì)比分析,進(jìn)而對(duì)AOP的編程思想展開了深入研究。

關(guān)鍵詞:計(jì)算機(jī)編程;AOP編程;結(jié)構(gòu)化程序;軟件性能

中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)24-0052-02

Study of Computer Programming thought and AOP Programming Ideas

LOU Cheng-wei1, CHEN Li-hong 2

(1.JinHua Education College, Jinhua 321000, China; 2.No.6 Middle School of JinHua, Jinhua 321000, China)

Abstract:In order to further expand the AOP, namely the aspect oriented programming in the program design and scope of the application software development, this article through to study computer programming ideas, in combination with computer related language and application environment, on the basis of the structured programming and object-oriented programming to make comparison and analysis, and then to AOP programming ideas for further research.

Key words:computer programming; AOP programming; a structured program; software performance

社會(huì)經(jīng)濟(jì)的不斷發(fā)展為網(wǎng)絡(luò)信息技術(shù)的發(fā)展提供了有利的條件,在此種背景下,計(jì)算機(jī)編程也得到了更為廣泛的應(yīng)用。作為計(jì)算機(jī)編程應(yīng)用的重要前提條件,編程思想不僅關(guān)系著所編程序的質(zhì)量,而且,對(duì)于計(jì)算機(jī)信息技術(shù)的發(fā)展也具有重要影響?;诖?,本文從計(jì)算機(jī)編程思想的角度出發(fā),進(jìn)而對(duì)當(dāng)前的新興編程思想,即AOP編程思想做出了全面分析。

1 計(jì)算機(jī)編程思想研究

1.1 計(jì)算機(jī)語言應(yīng)用及環(huán)境分析

就現(xiàn)階段而言,計(jì)算機(jī)編程仍然受諸多編程環(huán)境的影響,目前,常見的編程環(huán)境主要有Vista操作系統(tǒng)、Windows操作系統(tǒng)和Linux操作系統(tǒng)等。不同的編程語言對(duì)不同編程環(huán)境的適應(yīng)性也不盡相同,例如,C語言因其簡(jiǎn)單緊湊、應(yīng)用方便和運(yùn)算、數(shù)據(jù)類型豐富等特點(diǎn)十分適用于Windows操作系統(tǒng)中,而HAL.DLL及計(jì)算機(jī)相關(guān)硬件部分則以傳統(tǒng)的匯編語言為主[1]。

1.2 結(jié)構(gòu)化程序設(shè)計(jì)

計(jì)算機(jī)的結(jié)構(gòu)化編程思想是當(dāng)其在面臨復(fù)雜任務(wù)時(shí),為防止任務(wù)混亂而產(chǎn)生的一種編程思想,該思想的重點(diǎn)是將程序進(jìn)行規(guī)范化,具體內(nèi)容如下:通過采用模塊分解和功能抽象,進(jìn)而將復(fù)雜的任務(wù)分解成容易處理和控制的子任務(wù),并對(duì)分解后的子任務(wù)實(shí)施級(jí)別更加細(xì)化的任務(wù)劃分,從而確保最終得到的子任務(wù)成為一種能夠獨(dú)立進(jìn)行程序編寫的子程序模塊,并以相關(guān)調(diào)用和結(jié)構(gòu)關(guān)系為依據(jù),將此類模塊進(jìn)行組織協(xié)調(diào),最終獲得所需程序。需要說明的是,對(duì)任意的大型程序,其基本構(gòu)成程序總是包括三種基本基本結(jié)構(gòu),分別為順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。根據(jù)所要實(shí)現(xiàn)的功能,將大型程序劃分成若干個(gè)基本功能模塊,各功能模塊均能夠?qū)崿F(xiàn)對(duì)計(jì)算機(jī)的控制和數(shù)據(jù)處理,從而按照層次關(guān)系,進(jìn)行合理組織,實(shí)現(xiàn)復(fù)雜程序的相關(guān)功能[2]。

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

基于面相對(duì)象設(shè)計(jì)的編程思想將對(duì)象、類、封裝以及消息和集成等概念對(duì)相關(guān)程序展開設(shè)計(jì),并為了能夠解決結(jié)構(gòu)化程序設(shè)計(jì)難以處理的部分問題,如代碼重用等,從而提出了面向?qū)ο蟪绦蛟O(shè)計(jì)的技術(shù),其編程思想的特點(diǎn)如下:1)封裝。作為類與對(duì)象概念的主要特征,封裝能夠使模塊的獨(dú)立性大幅提升,從而為用戶對(duì)程序做出修改與維護(hù)提供了保證;2)抽象與繼承。抽象主要包括了對(duì)程序數(shù)據(jù)與編寫過程的抽象,而繼承性則使得所編寫程序的可重用性問題得以良好解決。面向?qū)ο蟪绦蜷_發(fā)思想的上述優(yōu)越性使其能夠針對(duì)所編寫的程序積極引用較為成熟的類庫,進(jìn)而從整體上提高了軟件開發(fā)的效率。

結(jié)構(gòu)化程序與面向?qū)ο蟪绦騼煞N編程思想并不是各自獨(dú)立的,二是相互支持并存在關(guān)聯(lián)的,就現(xiàn)階段而言,在進(jìn)行面向?qū)ο蟮某绦蛟O(shè)計(jì)時(shí),通常以“對(duì)象=算法+數(shù)據(jù)結(jié)構(gòu)”或“程序=對(duì)象+對(duì)象”來進(jìn)行,由此可知,在進(jìn)行面向?qū)ο蟪绦蛟O(shè)計(jì)時(shí),仍然需要對(duì)算法予以良好實(shí)現(xiàn)的結(jié)構(gòu)化程序設(shè)計(jì)思想,以此確保程序編寫的準(zhǔn)確性和全面性[3]。

2 AOP編程思想研究

2.1 AOP編程的開發(fā)思想

計(jì)算機(jī)編程思想和編程技術(shù)的發(fā)展使得以面向?qū)ο鬄橹饕枷氲木幊谭椒ǔ蔀榱擞?jì)算機(jī)編程領(lǐng)域應(yīng)用最為廣泛的思想,有效促進(jìn)了編程技術(shù)的發(fā)展。然而,面向?qū)ο蟮木幊趟枷胧冀K難以克服在編程過程中發(fā)生的冗余問題?;诖?,經(jīng)過相關(guān)領(lǐng)域人員的研究和分析,AOP編程思想得以產(chǎn)生。

AOP,即面向切面編程是一種利用程序運(yùn)行期動(dòng)態(tài)代理和預(yù)編譯方式實(shí)現(xiàn)程序功能的一類編程技術(shù),其實(shí)質(zhì)上是OPP編程的擴(kuò)展和延伸,同時(shí),也是基于Java語言的Spring開源框架的重要組成部分,通過隔離業(yè)務(wù)邏輯的各個(gè)部分,從而降低其彼此間的耦合度,在具備面向?qū)ο笞兂傻某绦蚩芍赜眯詢?yōu)勢(shì)的同時(shí),也大幅提高了軟件開發(fā)的效率[4]。

2.2 AOP編程思想的優(yōu)勢(shì)

AOP編程思想具有記下幾方面優(yōu)勢(shì):1)更好地定義服務(wù)。利用AOP編程思想展開程序編程能夠促使服務(wù)實(shí)現(xiàn)多元化應(yīng)用,并在確保編程簡(jiǎn)易化的同時(shí),獲取更多的程序功能。2)較高的專注性。在對(duì)離散方面子程序進(jìn)行創(chuàng)建時(shí),能夠積極引用開發(fā)團(tuán)隊(duì)的某項(xiàng)工作進(jìn)行專注開發(fā),對(duì)于團(tuán)隊(duì)中的精英而言,其可以較好地實(shí)現(xiàn)編程體驗(yàn),從而提高自身編程技能并增加AOP編程經(jīng)驗(yàn)。3)編程的持久性。在利用AOP編程思想展開基本結(jié)構(gòu)程序的面向?qū)ο缶幊虝r(shí),開發(fā)人員可以獨(dú)立的方式利用相同的編程代碼進(jìn)行對(duì)象的創(chuàng)建,并通過調(diào)用所創(chuàng)建對(duì)象,降低程序重復(fù)編譯的次數(shù), 促使程序編譯效率實(shí)現(xiàn)最大化[5]。

2.3 AOP將系統(tǒng)視為關(guān)注點(diǎn)

AOP同樣也是GOF設(shè)計(jì)模式的延伸,通過強(qiáng)調(diào)調(diào)用對(duì)象與被調(diào)用對(duì)象的解耦思想,從而為開發(fā)人員提供了能夠進(jìn)行橫切關(guān)注點(diǎn)描述的科學(xué)機(jī)制,同時(shí),將橫切關(guān)注點(diǎn)予以主動(dòng)織入到面向?qū)ο蟮某绦虍?dāng)中,從而為橫切關(guān)注點(diǎn)模擬化提供了良好的保障,使其能夠?qū)Ψ矫娲a做出合理劃分,提高程序開發(fā)效率。對(duì)于開發(fā)人員而言,通過AOP編程思想的利用,能夠使其在進(jìn)行程序編譯時(shí)更好地對(duì)系統(tǒng)的方面代碼進(jìn)行插入、更改和刪除,使得程序的可重用性得到大幅提升。

2.4 AOP編程軟件性能

基于AOP編程思想的軟件具有以下兩方面性能:1)代碼冗余度。在OOP(面向?qū)ο缶幊蹋┲校驒M切關(guān)注點(diǎn)通常涉及的模塊種類較多,故圍繞橫切關(guān)注點(diǎn)的程序功能的實(shí)現(xiàn)也大都分布在諸多模塊當(dāng)中,例如,在一個(gè)對(duì)數(shù)據(jù)庫予以引用的系統(tǒng)當(dāng)中,系統(tǒng)的性能則極有可能對(duì)所有訪問數(shù)據(jù)庫的模塊產(chǎn)生影響,從而將代碼分散至不同模塊中。對(duì)于AOP而言,其模塊化橫切關(guān)注點(diǎn)對(duì)每個(gè)關(guān)注點(diǎn)的處理方面采取最小耦合的思想,使得橫切關(guān)注點(diǎn)也具有了模塊化性能,基于此種設(shè)計(jì)產(chǎn)生的系統(tǒng),不僅代碼冗余度大幅減小,而且對(duì)各模塊功能的調(diào)用效率也得到了有效提升,為系統(tǒng)維護(hù)人員的維護(hù)工作奠定了良好基礎(chǔ)[6]。2)對(duì)于面向?qū)ο蟮某绦蛟O(shè)計(jì)而言,由于其一個(gè)模塊通常要實(shí)現(xiàn)多個(gè)關(guān)注點(diǎn)的對(duì)應(yīng),故而使得其他對(duì)類似功能具有需求的系統(tǒng)并不能馬上對(duì)該模塊進(jìn)行調(diào)用。對(duì)于AOP程序設(shè)計(jì)而言,其通過將每一方面(Aspect)進(jìn)行獨(dú)立模塊化,從而確保各個(gè)模塊間呈現(xiàn)出一種松散耦合的狀態(tài)。例如,在程序編寫時(shí),能夠引入另一獨(dú)立日志寫入器對(duì)既有的日志寫入器予以替換,從而將日志寫入數(shù)據(jù)庫當(dāng)中,使不同日志的寫入需求均能夠得到良好實(shí)現(xiàn)。由此可見,基于AOP編程思想的各模塊松散耦合的實(shí)現(xiàn)能夠有效提高代碼重用性,與OOP編程相比,實(shí)現(xiàn)模塊松散耦合方面具有較大優(yōu)勢(shì)。

3結(jié)論

本文通過語言應(yīng)用、應(yīng)用環(huán)境以及結(jié)構(gòu)化和面向?qū)ο蟪绦蛟O(shè)計(jì)等計(jì)算機(jī)編程思想進(jìn)行論述和分析,進(jìn)而從開發(fā)思想、編程優(yōu)勢(shì)、切入關(guān)注點(diǎn)和軟件性能等方面對(duì)AOP編程思想展開了系統(tǒng)探究。研究結(jié)果表明,與面向?qū)ο蟮木幊趟枷胂啾?,AOP編程思想在程序重用和模塊松散耦合方面具有較大優(yōu)勢(shì)。因此,未來需要進(jìn)一步加強(qiáng)對(duì)AOP編程思想的研究和應(yīng)用力度,通過將其與OOP編程思想進(jìn)行優(yōu)勢(shì)互補(bǔ),促使計(jì)算機(jī)編程技術(shù)得以不斷提升和發(fā)展。

參考文獻(xiàn):

[1] 賀慶和.AOP編程思想的研究[J].軟件導(dǎo)刊,2011,3(23):25-27.

[2] 王婧.計(jì)算機(jī)編程思想的發(fā)展研究[J].黑龍江科技信息,2014,10(25):146.

[3] 趙宗花,李占豐.關(guān)于PLC程序設(shè)計(jì)中對(duì)計(jì)算機(jī)編程思想的應(yīng)用研究分析[J].科協(xié)論壇(下半月),2011,2(13):45-46.

[4] 張矚熹,郭長(zhǎng)國,苑洪亮,等.基于AOP技術(shù)的通用線程監(jiān)控平臺(tái)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與科學(xué),2012,5(16):120-122.

[5]呂航飛.AOP編程技術(shù)探析[J].電腦知識(shí)與技術(shù):學(xué)術(shù)交流,2007,1(15):765-767.

[6] 閆兆振,賈作皆.AOP技術(shù)及其應(yīng)用[J].福建電腦,2012,7(18):63-64.

闻喜县| 汉寿县| 兴和县| 孙吴县| 潞城市| 墨玉县| 临湘市| 汉寿县| 建湖县| 邻水| 都安| 济源市| 博湖县| 寻乌县| 六枝特区| 焉耆| 钟祥市| 宁安市| 黔西县| 阿克苏市| 宝坻区| 贡山| 增城市| 岳阳县| 汤原县| 湟源县| 台江县| 沂水县| 丰原市| 金华市| 皋兰县| 鄂托克前旗| 保德县| 海丰县| 葫芦岛市| 晋城| 鹰潭市| 高要市| 乌鲁木齐县| 新宁县| 苍南县|