AspectJ是編譯期的AOP,在編譯期進(jìn)行代碼檢查,并匹配連接點(diǎn)和切入點(diǎn)的代價(jià)是非常昂貴的。這是老師ppt的原話,我有個(gè)疑問(wèn),在編譯期進(jìn)行代碼檢查,并匹配連接點(diǎn)和切入點(diǎn)為什么代價(jià)就大了?這個(gè)代價(jià)具體指的是什么?是時(shí)間?是系統(tǒng)資源?還是what?
我知道有的注解是在編譯期執(zhí)行,有的是在運(yùn)行期,為什么在編譯期進(jìn)行代碼檢查并匹配連接點(diǎn)和切入點(diǎn)的代價(jià)是非常昂貴的?這個(gè)非常昂貴肯定是相對(duì)的,那也就是編譯期進(jìn)行檢查是昂貴的,運(yùn)行期檢查就不昂貴?還是什么個(gè)情況?求大大們說(shuō)說(shuō)自己的看法。
2016-06-03
我的個(gè)人的理解是:在使用IDE的時(shí)候,每次修改代碼IDE都會(huì)自動(dòng)編譯檢查是否有錯(cuò)誤,所以會(huì)導(dǎo)致檢查代碼和匹配的代價(jià)很昂貴。