¤¿¤Þ¤Ë¤Ã¤¡£ / 2006-10-13
| Æü | ·î | ²Ð | ¿å | ÌÚ | ¶â | ÅÚ |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
2006-10-13 Fri
¢£ ASM
Á°¤«¤éÃΤäƤ¤¤¿¤â¤Î¤Î¡¤BCEL ¤Ç»öÂ¤ê¤Æ¤¤¤¿¤Î¤Ç»È¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤¬¡¤BCEL ¤Î Java 5 Âбþ¤ÎÃÙ¤µ¤Ë¤¤¤¤²Ã¸º·ùµ¤¤¬¤µ¤·¤¿¤Î¤Ç ASM ¤Ë¾è¤ê´¹¤¨¤Æ¤ß¤ë¡¥
¤Á¤Ê¤ß¤Ë¡¤Javassist ¤Ï¥á¥ó¥Ð¤Îºï½ü¤¬¤Ç¤¤Ê¤¤¤Î¤Ç¡¤¤¢¤Þ¤ê¾è¤ê°Ü¤ëµ¤¤Ë¤Ê¤é¤Ê¤¤¡¥´Êñ¤ËÁàºî¤Ç¤¤ë¤Î¤ÏÌ¥ÎÏŪ¤Ê¤ó¤À¤±¤É¡¥
ASM ¤ò»È¤¦¤Ë¤Ï Visitor ¥Ñ¥¿¡¼¥ó¤òÍý²ò¤·¤Æ¤ª¤¯É¬Íפ¬¤¢¤ë¡¥Decorator ¥Ñ¥¿¡¼¥ó¤â¤«¤Ê¡©
¤Ç¡¤¤À¡¥ASM ¤ò»È¤Ã¤Æ¥Ð¥¤¥È¥³¡¼¥É¤ò¤³¤Á¤ç¤³¤Á¤ç¤È¤¤¤¸¤Ã¤Æ¤ß¤ë¤È¡¤
- MethodVisitorA ¤Ç¥Õ¥£¡¼¥ë¥É¤ËÂФ¹¤ëÁàºî¤¬¹Ô¤ï¤ì¤ë¤´¤È¤Ë¡¤¤È¤¢¤ë½èÍý¦Á¤ò¹Ô¤ï¤»¤ë¡¥
- MethodVisitorB ¤Ç¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤´¤È¤Ë¡¤¤È¤¢¤ë½èÍý¦Â¤ò¹Ô¤ï¤»¤ë¡¥
¤³¤ÎÆó¤Ä¤Î Visitor ¤ò»È¤Ã¤Æ¤È¤¢¤ë¥¯¥é¥¹¤ò¹¹¿·¤·¤Æ¤ß¤¿¡¥
¦Á¤¬¥á¥½¥Ã¥É¸Æ¤Ó½Ð¤·¤Î½èÍý¤Î¤È¤¡¤MethodVisitorB ¤¬¦Á¤Ë¤è¤Ã¤ÆÄɲ䵤줿¤â¤Î¤ËÂФ·¤Æ¤â͸ú¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¡¥
someMethodCall(someField);
¦Á¡¤¦Â¤È¤â¤Ë System.out.println ¤È¤·¤¿¤È¤¡¤¾å¤Î1¹Ô¤ò¹¹¿·¤¹¤ë¤È
System.out.println("someMethodCall");
System.out.println("someFieldReferenced");
someMethodCall(someField);
¤È¤Ê¤Ã¤ÆÍߤ·¤¤¤È¤³¤í¤¬¡¤
System.out.println("SomeClass#someMethodCall");
System.out.println("PrintStream#println");
System.out.println("someFieldReferenced");
someMethodCall(someField);
¤È¤Ê¤Ã¤Æ¤·¤Þ¤¦¡¥¤³¤ì¤Ïº¤¤Ã¤¿¡¥»ÅÊý¤Ê¤¤¤Î¤Ç¡¤MethodVisitorA ¤È MethodVisitorB ¤½¤ì¤¾¤ì¤Ç¹Ô¤¦½èÍý¤òƱ¤¸¥¯¥é¥¹ MethodVisitorC ¤Ç¤ä¤ë¤è¤¦¤Ë¤¹¤ë¤È¡¤´õ˾Ä̤ê¤Î½ÐÎϤ¬ÆÀ¤é¤ì¤¿¡¥
¤¬¡¤¤³¤¦¤¹¤ë¤È MethodVisitorC ¤¬¤¹¤ó¤´¤¤Ä¹¤¯¤Ê¤ë¤Î¤Ç¡¤¤É¤¦¤·¤è¤¦¡¦¡¦¡¦¡¥
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12
2002 : 01 02 03 04 05 06 07 08 09 10 11 12
2001 : 01 02 03 04 05 06 07 08 09 10 11 12
ºÇ½ª¹¹¿·»þ´Ö: 2008-09-04 19:19





