View
17
Download
0
Category
Preview:
DESCRIPTION
アスペクト指向言語のための視点に応じた編集を可能にするツール. 千葉 滋 研究室 11M37063 大谷 晃司. オブジェクト指向 言語 で の開発の限界. 横断的関心事 : モジュール間 をまたがってしまう関心事 例 : ロギング 処理、図形の再描画 処理、 タイマー処理 など 編集、つけ 外し が困難 横断的関心事 に 対応 した 言語 が 必要. Shape. setX. setY. y 代入. x 代入. Rectangle. se t Height. setWidth. GUI. GUI. GUI. GUI. Timer. - PowerPoint PPT Presentation
Citation preview
1
11M37063 11RectangleseHeightsetWidthShapesetXsetYxyGUITimerGUITimerGUITimerGUITimer: :
22RectangleseHeightsetWidthShapesetXsetYxyGUITimerGUITimer3GUITimerGUITimerRepainterTimerGUITimerTimerTimerTimerGUIGUIGUI3RectangleseHeightsetWidthShapesetXsetYxyRepainterGUIGUIGUITimerTimerTimerTimer: 4setHeightTimerGUI4RepainterTimer: 5RectangleseHeightsetWidthGUITimerTimerRectangleseHeightsetWidthGUIGUITimerTimerGUI5EclipseGluonJ [OOPSLA 10]Java6
6
()
7RectangleseHeightsetWidthRepainterTimerGUITimerTimerGUI7
()8RectangleseHeightsetWidthShapesetXsetYxyShapeRectangleRepainterTimerGUITimerTimerTimerTimerGUIGUIGUI89
9
10RectangleseHeightsetWidthShapesetXsetYyRepainterTimerGUITimerTimerTimerGUIGUIGUIxTimer1011
1112
12Withincaller
13ShapesetXsetYxyFigureEditor
Shape s;int newX = s.setX(newX);
mouseDragged
Shape s;int newX = s.setX(newX);
mouseClickedTimerTimerTimerFigureEditormouseDraggedRepainterGUIGUI13Withincaller
14TimerTimerTimerFigureEditormouseDraggedRepainterGUIGUIFigureEditormouseDraggedShapesetXsetYxyFigureEditor
Shape s;int newX = s.setX(newX);
mouseDragged
Shape s;int newX = s.setX(newX);
mouseClicked14
Within()callerWithin1515Within()Within16
16JDTGluonJ1840 54 24
1717(1.) (2.) (3.) Within(4.) JDTJava
1818JDT40%1.819
19JDT202080%20%21
21(1/2)AJDT (+ AspectJ)
AspectMaps [Fabry 11]
2222(2/2)KIDE [Kanazawa 12]
Code Bubbles [Andrew 10]bubble
2323future workGluonJfuture workPPL 2011282424
Recommended