A Case for Statically Executable Advice: Checking the Law of Demeter with AspectJ

Karl Lieberherr, David H. Lorenz, Pengcheng Wu

פרסום מחקרי: פרק בספר / בדוח / בכנספרסום בספר כנסביקורת עמיתים

תקציר

We define a generic join point model for checking the Law of Demeter (LoD). Join points are trees, pointcuts are predicates over join points, and advice is checked statically similar to how declare warning is checked in AspectJ. We illustrate how the joint point form is mapped to the object and class forms of LoD, and provide an implementation in AspectJ that approximates LoD's class form by dynamically checking a particular execution using only the join points' static part. The paper proposes two ways to extend AspectJ to provide access to lexical join points directly. The first proposes statically executable advice and pointcut designators over lexical join points. The second proposes statically executable meta-advice over the exposed abstract syntax tree of the program and using Demeter style traversals to mirror AspectJ pointcuts.

שפה מקוריתאנגלית
כותר פרסום המארחProceedings of the 2nd International Conference on Aspect-Oriented Software Development, AOSD '03
עמודים40-49
מספר עמודים10
סטטוס פרסוםפורסם - 2003
פורסם באופן חיצוניכן
אירוע2nd International Conference on Aspect-Oriented Software Development - Boston, MA, ארצות הברית
משך הזמן: 17 מרץ 200321 מרץ 2003

סדרות פרסומים

שם2nd International Conference on Aspect-Oriented Software Development

כנס

כנס2nd International Conference on Aspect-Oriented Software Development
מדינה/אזורארצות הברית
עירBoston, MA
תקופה17/03/0321/03/03

טביעת אצבע

להלן מוצגים תחומי המחקר של הפרסום 'A Case for Statically Executable Advice: Checking the Law of Demeter with AspectJ'. יחד הם יוצרים טביעת אצבע ייחודית.

פורמט ציטוט ביבליוגרפי