乙個輕量級AOP的實現(開源)

2021-09-20 01:12:13 字數 840 閱讀 2932

事先宣告,本專案參考aop in c#和園內大神張逸的文章,思路神馬的都不是自己的!

為了讓專案的**看起來更乾淨,需要乙個aop!

於是就實現了乙個非常簡單的,非常輕量級,有多輕量級呢?

實現的aop叫做earthworm(蚯蚓,為什麼叫這個?因為它小,它會疏通!,專案的本意也是這樣,所以就叫這個!),命名空間earthworm下有8個**檔案,包括4個公開介面,1個公開特性,1個公開的抽象類,2個內部類。所以對外部呼叫者而言,可見的只有6個,夠輕量級了吧!

先看專案的組成!

先從簡單的說吧!

4個公開介面:

istopadvice

ibeforeadvice

iafteradvice

注釋比較齊全就不說了,這三個介面是提供給「通知物件」的!

還有乙個是提供給「通知物件」提供者的!

iadviceprovider

當然這個aop的主要部分不是這個!

來看最核心的aspectorientedproperty和aspect

aspectorientedproperty

aspect

最後是浮雲般的aspectorientedobject

///

/// 做個假哦

///public abstract class aspectorientedobject:contextboundobject{}

還有aspectorientedattribute

需**,加908165245!

peewee 乙個輕量級的ORM 四

class database last insert id cursor,model parameters return type 最後乙個插入的記錄的那行的主鍵,不一定非得叫 id rows affected cursor return type 受影響的行數 create table model...

DI php寫乙個輕量級的容器

摘要 理解什麼是di ioc,依賴注入 控制反轉。兩者說的是乙個東西,是當下流行的一種設計模式。大致的意思就是,準備乙個盒子 容器 事先將專案中可能用到的類扔進去,在專案中直接從容器中拿,也就是避免了直接在專案中到處new,造成大量耦合。取而代之的是在專案類裡面增設 setdi 和getdi 方法,...

乙個輕量級的後台管理系統

單模組應用 開源 適合小型軟體後台 功能描述 1.使用者管理 使用者是系統操作者,該功能主要完成系統使用者配置。2.部門管理 配置系統組織機構 公司 部門 小組 樹結構展現支援資料許可權。3.崗位管理 配置系統使用者所屬擔任職務。4.選單管理 配置系統選單,操作許可權,按鈕許可權標識等。5.角色管理...