999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺議面向方面技術的開發方法和實現技術

2016-03-02 08:49:13田興強

田興強

(貴州農業職業學院 貴州貴陽 550018)

?

淺議面向方面技術的開發方法和實現技術

田興強

(貴州農業職業學院 貴州貴陽 550018)

摘 要:在計算機應用領域持續擴大的背景下,對程序開發技術的要求不斷增高。傳統的OOP技術難以處理大量的橫切關注點,使計算機的授權、異常捕捉以及日志等功能得不到更新,導致計算機出現代碼復雜、難維護以及可復用性低等問題。AOP是一項新的編程技術,并能解決OOP所存在的問題?;谶@一點,本文對AOP技術進行分析,從AOP編制語言以及主要元素入手,探討AOP的主要開發方法,再結合OOP的相關特點,進一步闡述AOP的三種實現技術,并將三種實現技術進行對比,給出最佳的AOP實現形式,旨在為AOP開發人員提供參考。

關鍵詞:OOP技術 AOP技術 橫切關注點

在OOP的運用中,軟件開發通常要將系統依照功能進行分解,再將具備這些功能的小單元進行開發。同時,對外提供相應的接口,將小單元進行組合,以此形成完整的系統功能。但由于系統中存在大量橫切關注點,而OOP技術難以將橫切關注點儲存在單個模塊內,導致橫切關注點分散在系統中,并與功能代碼相混合,從而減弱了系統模塊的可維護性、可追蹤性以及可利用性。AOP是在OOP基礎上改造而來,并能保留OOP原有的優勢。就AOP來講,通過分離原有的方面模塊,再將方面模塊轉入到核心類處,以此達到系統演化的目的。[1]

一、AOP的基本概述、編制語言以及主要元素

1.基本概述

AOP實質上是一種面向方面的程序設計方式,不僅能分離關注點,還能處理橫斷現象。

2.主要元素

通常來講,AOP的主要元素有五種:一是方面,二是連接點,三是切入點,四是通知,五是關注點。

3.編制語言

AOP語言通常有三種形式:一是聯結點,二是聯結點標識,三是行為。就聯結點來講,這是一種定義較為明確的點,能提供程序描述的基本框架,也是不同代碼之間相互交互的點。就聯結點標識來講,這種標識可提供具體結構來操縱程序的任何部分。就行為來講,這是一種針對聯結點所選擇的行為。

二、AOP的主要開發方法

在開發AOP的過程中,主要選用松散耦合的結構來提供獨立關注點,并將這些獨立關注點進行組合,以此構成最終的AOP系統。通常來講,可將AOP的開發過程分為三環節,依次為方面分解、實現關注點以及重新組合。[2]

1.方面分解

在方面分解過程中,將AOP需求分解為兩類關注點,分別是一般關注點以及橫切關注點。

2.實現關注點

在實現關注點的過程中,如果要實現一般關注點,可借助OOP技術就能完成;如果要實現橫切關注點,就需借助AOP技術來完成。

3.重新組合

在重新組合的過程中,方面集合器需重新構建模塊單元,以此制定重組規則。

4.AOP以及OOP對比

就AOP技術以及OOP技術的差異性來講,最顯著的差異就是橫切關注點的實現形式。就AOP而言,在實現AOP過程中可保留編程范型的全部優點。就以OOP為例,如果在開發AOP的過程中,選擇OOP作為AOP的基礎范型,就能將OOP的優勢全部保留,包括一般關注點的實現優勢。同時,在AOP系統的代碼重用性比OOP的代碼重用性更強。此外,AOP所含的方面模塊無法識別橫切關注點,AOP系統更容易拓展新功能,并且AOP系統擴展難度小于OOP系統。

三、AOP的主要實現技術

通常來講,AOP的實現過程有兩個步驟:一是組裝關注點,二是將組裝結果進行轉化。就組裝關注點來講,這部分較為簡單。就轉化組裝結果來講,這是AOP實現的重要內容。將組裝結果進行轉化,使原有的源碼轉化成新的源碼,再將生成的源碼通過編譯器進行編譯,以此生成可執行代碼。例如,現將不同方面進行轉化,生成新的Java源代碼,再借助編譯器將新生成的源代碼進行轉化,以此形成字節碼。

1.實現技術

從目前來看,AOP的實現技術主要有三種:一是基于開發模式的實現技術,包括行為模式。二是基于開發語言的實現技術,包括Aspect J。三是基于修改代碼的實現技術,包括Spring。

2.技術對比

就基于開發模式的實現技術來講,這種技術是參照面向對象所具有的語言特性,從技術開發的角度入手,并借助面向對象常用的分析途徑進行分析,再開發可行的設計模式使現有程序具備面向方面的基本特性,以此達到實現AOP的目的。在這類技術的運用中,需在研究AOP過程中掌握AOP的具體含義。

就基于開發語言的實現技術來講,這種技術要求使用者重新掌握一門語言,如Aspect J語言。盡管Aspect J語言能夠適用于Java,但由于Aspect J語言的語言規則與主流語言的語言規則相差較大,難以成為AOP的通用語言。因此,這類技術容易受到語言的限制,目前還無法成為主流的實現技術。[3]

就基于修改代碼的實現技術來講,這種技術只需借助AOP常用的開發框架,并在分析階段合理選擇AOP的思想方法來確定設計系統。如此一來,這就能夠解決前兩種方式所存在的弊端。此外,這種方式所借助的AOP框架具有開放源碼的特性,便于開發者從源碼中獲取AOP框架常用的運行機制。

總而言之,第三種技術是實現AOP的最佳方式,便于開發人員從需求分析階段以及重新組合階段深入了解AOP。此外,第三種技術可借助Java常用的語言來構建AOP框架,有助于使用人員進行研究。

結語:

本文對AOP技術進行簡單闡述,并從開發方法以及實現技術兩方面入手。從開發過程來講,AOP的開發過程依次為方面分解、實現關注點以及重新組合;從實現技術來講,AOP主要依靠基于開發模式的實現技術、基于開發語言的實現技術、基于修改代碼的實現技術??傊?,AOP仍存在研究的基礎階段,并有著較多的潛在優勢,包括面向過程技術優勢以及面向對象技術優勢。從目前AOP發展來看,AOP在軟件領域中有了一定突破,在操作系統以及網絡管理中廣泛應用。但AOP開發人員仍需加強對AOP的研發,以此增強AOP技術的穩定性。[4]

參考文獻:

[1]鄧惠敏.基于CPS的實時系統的面向方面的MDA方法[D].廣東工業大學,2011.

[2]孫曉星.面向方面的軟件容錯模型設計與分析技術[D].華東理工大學,2012.

[3]張璇.面向方面可信軟件過程建模方法研究[D].云南大學,2014.

[4]黃興硯.基于MDA的面向方面建模工具的研究[D].重慶大學,2014.

[5]李冰.基于面向方面的軟件產品線產品配置生成方法研究及支持工具實現[D].吉林大學,2013.

作者簡介:

田興強,畢業學校:貴州大學,專業:計算機軟件工程,工作單位:貴州農業職業學院,研究方向:軟件工程

主站蜘蛛池模板: 久久久波多野结衣av一区二区| 污污网站在线观看| 国产微拍精品| 色偷偷av男人的天堂不卡| 国产黄色免费看| 波多野结衣一区二区三区AV| 成·人免费午夜无码视频在线观看| 99久久国产综合精品女同 | 久久综合色视频| 国产精品女同一区三区五区| 国产一区免费在线观看| 伊人久久综在合线亚洲2019| 国产精品视频系列专区| 午夜精品福利影院| 久久久91人妻无码精品蜜桃HD| 国产素人在线| 亚洲成a人片77777在线播放| 亚洲视屏在线观看| 亚洲色图欧美视频| 国产精品国产主播在线观看| 91系列在线观看| 欧美高清国产| 国内黄色精品| 国产成人盗摄精品| 呦女亚洲一区精品| 欧美精品成人一区二区在线观看| 日韩 欧美 国产 精品 综合| 久久久国产精品免费视频| 久操线在视频在线观看| 日韩第一页在线| 日本欧美一二三区色视频| 亚洲人成网18禁| 中文字幕av无码不卡免费| 成人国内精品久久久久影院| 亚洲av日韩综合一区尤物| 国产无套粉嫩白浆| 99精品在线看| 亚洲毛片一级带毛片基地| 亚洲综合在线最大成人| 欧美全免费aaaaaa特黄在线| 99这里只有精品免费视频| 97国产成人无码精品久久久| 国产性生大片免费观看性欧美| 午夜精品福利影院| 久久国产拍爱| 91精品aⅴ无码中文字字幕蜜桃 | 国产视频只有无码精品| 99爱视频精品免视看| 欧美国产日韩在线| 国产精品尤物在线| 特级毛片免费视频| 国内精自视频品线一二区| 欧美va亚洲va香蕉在线| 69精品在线观看| 狠狠亚洲婷婷综合色香| 秘书高跟黑色丝袜国产91在线 | 欧美色香蕉| 日本三级精品| 精品福利网| 国产网友愉拍精品视频| 国产一级精品毛片基地| 国产青榴视频在线观看网站| 中文字幕亚洲乱码熟女1区2区| 成人精品午夜福利在线播放| 亚洲日韩AV无码精品| 国产女人综合久久精品视| 日韩色图在线观看| 免费国产一级 片内射老| 欧美一区二区丝袜高跟鞋| 欧美日本激情| 欧美精品亚洲二区| 九九九久久国产精品| 中文字幕在线视频免费| 一级全黄毛片| 欧美在线精品怡红院| 精品国产一二三区| 久久无码高潮喷水| www.日韩三级| 亚洲一区二区三区香蕉| 精品国产91爱| 试看120秒男女啪啪免费| 激情六月丁香婷婷四房播|