? ? ? ? ? ? ? ? ?
1:AOP 簡(jiǎn)介
? ? AOP: Aspect Oriented Programming 面向切面編程歧焦。
2:AOP 功能
? ? ? 日志記錄,性能統(tǒng)計(jì)篙耗,安全控制瓶籽,事務(wù)處理洞慎,異常處理等等。
3: iOS中的AOP
? ? ? ?利用 Objective-C 的 Runtime 特性菱皆,我們可以給語言做擴(kuò)展须误,幫助解決項(xiàng)目開發(fā)中的一些設(shè)計(jì)和技術(shù)問題。這一篇仇轻,我們來探索一些利用 Objective-C Runtime 的黑色技巧京痢。這些技巧中最具爭(zhēng)議的或許就是 Method Swizzling 。其次篷店,用不用就看項(xiàng)目規(guī)模和團(tuán)隊(duì)規(guī)模历造。有些業(yè)務(wù)確實(shí)非常適合使用AOP,比如log,AOP還可以用來debug
AOP的優(yōu)勢(shì):
減少代碼耦合船庇,方便復(fù)用吭产。切面業(yè)務(wù)的代碼可以獨(dú)立出來,方便其他應(yīng)用使用提高代碼review的質(zhì)量鸭轮,比如我可以規(guī)定某些類的某些方法才用特定的命名規(guī)范臣淤,這樣review的時(shí)候就可以發(fā)現(xiàn)一些問題
AOP知名開源庫:Aspects