<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 8, comments - 13, trackbacks - 0, articles - 43
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    AOP學習筆記一:動機

    Posted on 2009-08-08 21:55 kangaroo 閱讀(247) 評論(0)  編輯  收藏

    AOP,全稱Aspect Oriented Programming,面向方面的編程。那么就要問了,什么是方面,為什么引入AOP?
    一般情況下,OOP能夠很好的避免代碼重復。具體繼承可以幫助我們在不同類型之間共享相同的行為;多態讓我們可以用同樣的方式處理不同類型的對象,將注意力集中在它們的共同之處。但是,有些時候,OOP也避免不了代碼的重復,比如下面的例子:

    public class MyBusinessObject extends BusinessObject {
     
        
    public void businessMethod1() throws UnanthorizedException {
            doSecurityCheck();
        }


        
    public void businessMethod2() throws UnanthorizedException {
            doSecurityCheck();
        }

           
        
    public void businessMethod3(){
            
    //do not need check security.
        }



        
    protected void doSecurityCheck() throws UnanthorizedException {
            
    //implement the security check.
        }

    }


    上面是安全性檢查的例子,我們希望檢查用戶是否有權限執行某個方法,如果沒有就拋出異常。我們把安全檢查的工作放在一個方法中實現,但是這個仍無法避免一行重復代碼的編寫。另外,當開發者添加一個新的業務方法時,它完全有可能忘記調用安全檢查的方法,從而破壞了應用程序的安全性。為了在方法執行的過程中識別出“應該調用安全性檢查”的那一點,我們需要用一種高全新的方式來看待程序結構,而OO的層次模型無法提供這種新的視角。對于這個問題,繼承愛莫能助,“安全性檢查”在這里是一個具有橫切性的問題,需要進行安全性檢查的方法都是彼此獨立的,無法從某個通用的方法繼承下去。
    AOP的目標就是將橫切型crosscutting的問題以一種更加通用的方式模塊化,從而提升程序的模塊化程度。在AOP中,我們可以單獨編寫“安全性檢查”的代碼,并將其包裝為一個方面aspect。(方面的概念出現嘍!)然后,我們可以告訴AOP實現產品如何在運行時將方面織入到程序流程之中,具體的實現策略,請看下篇AOP的實現策略。


     


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久久无码精品亚洲日韩京东传媒| 久久久久女教师免费一区| 亚洲国产精品无码久久SM| 成年丰满熟妇午夜免费视频| jzzjzz免费观看大片免费| a级片免费在线播放| 免费VA在线观看无码| 9久热精品免费观看视频| 亚洲综合免费视频| 在线免费视频一区| 成年女人色毛片免费看| 亚洲一区二区三区久久| 高潮毛片无遮挡高清免费| 亚洲欧洲AV无码专区| 国产精品成人69XXX免费视频| 在线看片v免费观看视频777| 五月婷婷亚洲综合| 国产一区视频在线免费观看| 亚洲一区AV无码少妇电影☆| 亚洲一区二区影视| 成人网站免费看黄A站视频| 啦啦啦手机完整免费高清观看| 久久久久亚洲精品影视| 国产偷国产偷亚洲高清在线| 免费人成视频在线观看网站| 4444www免费看| 亚洲国产精品日韩在线观看 | 亚洲男人第一无码aⅴ网站| 久久久久久久亚洲Av无码| 一级毛片a免费播放王色| 成人免费无码大片a毛片软件| 久久久亚洲精品国产| 114一级毛片免费| 香蕉视频在线观看免费| 午夜dj在线观看免费视频| 亚洲三级电影网址| 中文字幕的电影免费网站| 久久国产成人亚洲精品影院 | 精品亚洲成AV人在线观看| 好爽…又高潮了毛片免费看| 国产99视频精品免费视频76|