123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671 |
- <html xmlns:o="urn:schemas-microsoft-com:office:office"
- xmlns:w="urn:schemas-microsoft-com:office:word"
- xmlns="http://www.w3.org/TR/REC-html40">
-
- <head>
- <meta http-equiv=Content-Type content="text/html; charset=windows-1252">
- <meta name=ProgId content=Word.Document>
- <meta name=Generator content="Microsoft Word 11">
- <meta name=Originator content="Microsoft Word 11">
- <link rel=File-List href="oopsla2002-script_files/filelist.xml">
- <title>demo: OO IDE</title>
- <!--[if gte mso 9]><xml>
- <o:DocumentProperties>
- <o:Author>Mik Kersten</o:Author>
- <o:LastAuthor>Mik Kersten</o:LastAuthor>
- <o:Revision>2</o:Revision>
- <o:TotalTime>91</o:TotalTime>
- <o:LastPrinted>2002-09-06T19:46:00Z</o:LastPrinted>
- <o:Created>2003-11-11T03:52:00Z</o:Created>
- <o:LastSaved>2003-11-11T03:52:00Z</o:LastSaved>
- <o:Pages>1</o:Pages>
- <o:Words>320</o:Words>
- <o:Characters>1829</o:Characters>
- <o:Company>Xerox PARC</o:Company>
- <o:Lines>15</o:Lines>
- <o:Paragraphs>4</o:Paragraphs>
- <o:CharactersWithSpaces>2145</o:CharactersWithSpaces>
- <o:Version>11.5606</o:Version>
- </o:DocumentProperties>
- </xml><![endif]--><!--[if gte mso 9]><xml>
- <w:WordDocument>
- <w:ValidateAgainstSchemas/>
- <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
- <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
- <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
- <w:Compatibility>
- <w:BreakWrappedTables/>
- <w:SnapToGridInCell/>
- <w:WrapTextWithPunct/>
- <w:UseAsianBreakRules/>
- <w:UseWord2002TableStyleRules/>
- </w:Compatibility>
- <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
- </w:WordDocument>
- </xml><![endif]--><!--[if gte mso 9]><xml>
- <w:LatentStyles DefLockedState="false" LatentStyleCount="156">
- </w:LatentStyles>
- </xml><![endif]-->
- <style>
- <!--
- /* Font Definitions */
- @font-face
- {font-family:Courier;
- panose-1:2 7 4 9 2 2 5 2 4 4;
- mso-font-alt:"Courier New";
- mso-font-charset:0;
- mso-generic-font-family:modern;
- mso-font-format:other;
- mso-font-pitch:fixed;
- mso-font-signature:3 0 0 0 1 0;}
- @font-face
- {font-family:Wingdings;
- panose-1:5 0 0 0 0 0 0 0 0 0;
- mso-font-charset:2;
- mso-generic-font-family:auto;
- mso-font-pitch:variable;
- mso-font-signature:0 268435456 0 0 -2147483648 0;}
- @font-face
- {font-family:Tahoma;
- panose-1:2 11 6 4 3 5 4 4 2 4;
- mso-font-charset:0;
- mso-generic-font-family:swiss;
- mso-font-pitch:variable;
- mso-font-signature:1627421319 -2147483648 8 0 66047 0;}
- @font-face
- {font-family:Verdana;
- panose-1:2 11 6 4 3 5 4 4 2 4;
- mso-font-charset:0;
- mso-generic-font-family:swiss;
- mso-font-pitch:variable;
- mso-font-signature:536871559 0 0 0 415 0;}
- /* Style Definitions */
- p.MsoNormal, li.MsoNormal, div.MsoNormal
- {mso-style-parent:"";
- margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
- p.MsoHeader, li.MsoHeader, div.MsoHeader
- {margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- tab-stops:center 3.0in right 6.0in;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
- p.MsoFooter, li.MsoFooter, div.MsoFooter
- {margin:0in;
- margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- tab-stops:center 3.0in right 6.0in;
- font-size:12.0pt;
- font-family:"Times New Roman";
- mso-fareast-font-family:"Times New Roman";}
- /* Page Definitions */
- @page
- {mso-footnote-separator:url("oopsla2002-script_files/header.html") fs;
- mso-footnote-continuation-separator:url("oopsla2002-script_files/header.html") fcs;
- mso-endnote-separator:url("oopsla2002-script_files/header.html") es;
- mso-endnote-continuation-separator:url("oopsla2002-script_files/header.html") ecs;}
- @page Section1
- {size:8.5in 11.0in;
- margin:.5in 1.25in .5in 1.25in;
- mso-header-margin:.2in;
- mso-footer-margin:.2in;
- mso-header:url("oopsla2002-script_files/header.html") h1;
- mso-paper-source:0;}
- div.Section1
- {page:Section1;}
- /* List Definitions */
- @list l0
- {mso-list-id:68115525;
- mso-list-type:hybrid;
- mso-list-template-ids:858938398 1703206876 -2139089146 -2064071216 1691643238 1804361448 1106935208 795498688 1114022646 513440110;}
- @list l0:level1
- {mso-level-number-format:bullet;
- mso-level-text:•;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;
- font-family:"Times New Roman";}
- @list l1
- {mso-list-id:149487999;
- mso-list-type:hybrid;
- mso-list-template-ids:996163290 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
- @list l1:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:40.5pt;
- mso-level-number-position:left;
- margin-left:40.5pt;
- text-indent:-.25in;
- font-family:Symbol;}
- @list l2
- {mso-list-id:285232438;
- mso-list-type:hybrid;
- mso-list-template-ids:-1431031654 -726899658 -63553996 -873671648 -1949522634 -2029475690 883689166 1438958244 -911152764 -143889788;}
- @list l2:level1
- {mso-level-number-format:bullet;
- mso-level-text:•;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;
- font-family:"Times New Roman";}
- @list l3
- {mso-list-id:666597725;
- mso-list-type:hybrid;
- mso-list-template-ids:1496319566 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
- @list l3:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:40.5pt;
- mso-level-number-position:left;
- margin-left:40.5pt;
- text-indent:-.25in;
- font-family:Symbol;}
- @list l4
- {mso-list-id:829760420;
- mso-list-type:hybrid;
- mso-list-template-ids:697599534 737209016 718337656 126128176 699144238 -186582856 2015656828 -573567698 -98694796 -102872622;}
- @list l4:level1
- {mso-level-number-format:bullet;
- mso-level-text:•;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;
- font-family:"Times New Roman";}
- @list l5
- {mso-list-id:1175682958;
- mso-list-type:hybrid;
- mso-list-template-ids:-1913763548 1683933168 -207477172 -1896716198 -1685027206 1819944446 78184194 2140690680 2113166228 -1703233950;}
- @list l5:level1
- {mso-level-number-format:bullet;
- mso-level-text:•;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;
- font-family:"Times New Roman";}
- @list l6
- {mso-list-id:1372803880;
- mso-list-type:hybrid;
- mso-list-template-ids:-1464406574 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
- @list l6:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:40.5pt;
- mso-level-number-position:left;
- margin-left:40.5pt;
- text-indent:-.25in;
- font-family:Symbol;}
- @list l7
- {mso-list-id:1447773079;
- mso-list-type:hybrid;
- mso-list-template-ids:-1699440192 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
- @list l7:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;
- font-family:Symbol;}
- @list l8
- {mso-list-id:1451361852;
- mso-list-type:hybrid;
- mso-list-template-ids:-1759205440 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
- @list l8:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:40.5pt;
- mso-level-number-position:left;
- margin-left:40.5pt;
- text-indent:-.25in;
- font-family:Symbol;}
- @list l9
- {mso-list-id:1524708695;
- mso-list-type:hybrid;
- mso-list-template-ids:343073212 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
- @list l9:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;
- font-family:Symbol;}
- @list l10
- {mso-list-id:1659534521;
- mso-list-type:hybrid;
- mso-list-template-ids:291794924 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
- @list l10:level1
- {mso-level-number-format:bullet;
- mso-level-text:\F0B7;
- mso-level-tab-stop:40.5pt;
- mso-level-number-position:left;
- margin-left:40.5pt;
- text-indent:-.25in;
- font-family:Symbol;}
- @list l11
- {mso-list-id:1796213947;
- mso-list-type:hybrid;
- mso-list-template-ids:286165626 -348468910 -768843216 1184416038 1188434802 1919294230 -1935737384 -448084024 -1107797042 -1968251254;}
- @list l11:level1
- {mso-level-number-format:bullet;
- mso-level-text:•;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;
- font-family:"Times New Roman";}
- @list l12
- {mso-list-id:1823081790;
- mso-list-type:hybrid;
- mso-list-template-ids:-1570481774 -1554755134 -381011836 -1997633904 -940664112 -1372821974 -923489310 2081716164 235678500 2136529842;}
- @list l12:level1
- {mso-level-number-format:bullet;
- mso-level-text:•;
- mso-level-tab-stop:.5in;
- mso-level-number-position:left;
- text-indent:-.25in;
- font-family:"Times New Roman";}
- ol
- {margin-bottom:0in;}
- ul
- {margin-bottom:0in;}
- -->
- </style>
- <!--[if gte mso 10]>
- <style>
- /* Style Definitions */
- table.MsoNormalTable
- {mso-style-name:"Table Normal";
- mso-tstyle-rowband-size:0;
- mso-tstyle-colband-size:0;
- mso-style-noshow:yes;
- mso-style-parent:"";
- mso-padding-alt:0in 5.4pt 0in 5.4pt;
- mso-para-margin:0in;
- mso-para-margin-bottom:.0001pt;
- mso-pagination:widow-orphan;
- font-size:10.0pt;
- font-family:"Times New Roman";
- mso-ansi-language:#0400;
- mso-fareast-language:#0400;
- mso-bidi-language:#0400;}
- </style>
- <![endif]-->
- </head>
-
- <body lang=EN-US style='tab-interval:.5in'>
-
- <div class=Section1>
-
- <div align=center>
-
- <table class=MsoNormalTable border=0 cellspacing=3 cellpadding=0 width=709
- style='width:531.65pt;mso-cellspacing:2.2pt;margin-left:-7.95pt;mso-padding-alt:
- 1.5pt 1.5pt 1.5pt 1.5pt'>
- <tr style='mso-yfti-irow:0;mso-yfti-firstrow:yes;height:14.3pt'>
- <td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:14.3pt'>
- <p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
- 7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
- line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
- font-family:Verdana;color:#383E4C'>demo: object-oriented IDE</span></b><span
- style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:1;height:33.45pt'>
- <td width=703 colspan=3 style='width:527.25pt;background:#F7F7F7;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
- <ul style='margin-top:0in' type=disc>
- <li class=MsoNormal style='mso-list:l9 level1 lfo7;tab-stops:list .5in'><span
- style='font-size:10.0pt;font-family:Tahoma'>good at showing hierarchical
- OO structure…<o:p></o:p></span></li>
- </ul>
- </td>
- </tr>
- <tr style='mso-yfti-irow:2;height:10.45pt'>
- <td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:10.45pt'>
- <p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
- 7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
- line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
- font-family:Verdana;color:#383E4C'>demo: modularize concern</span></b><span
- style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:3;height:33.45pt'>
- <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l8 level1 lfo8;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Show FigureEd running<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l8 level1 lfo8;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Inspect Point.java<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l8 level1 lfo8;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Use joinpoint probe to find<o:p></o:p></span></p>
- </td>
- <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'>call(void figures.Canvas.updateHistory())
- && within(*)<o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:4;height:33.45pt'>
- <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Describe places that it’s called<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>create aspect (defines a special class that can crosscut other
- classes)<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>aspect HistoryUpdating <o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l1 level1 lfo9;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>write pointcut (has name and parameters)<o:p></o:p></span></p>
- </td>
- <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'>pointcut moves(): <o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'><span style='mso-tab-count:1'> </span>call(void
- Line.setP1(Point)) || <o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'><span style='mso-tab-count:1'> </span>call(void
- Line.setP2(Point));<o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:5;height:33.45pt'>
- <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>write after advice (runs “on the way back out”)<o:p></o:p></span></p>
- </td>
- <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'>after() returning: move() { <br>
- <span style='mso-spacerun:yes'> </span><runs after each move> }<o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:6;height:33.45pt'>
- <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>extend advice to Point setters (multi-class)<o:p></o:p></span></p>
- </td>
- <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'>call(void FigureElement+.set*(..))<o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:7;height:33.45pt'>
- <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>capture context & use interface<o:p></o:p></span></p>
- </td>
- <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'>move(FigureElement fe): target(fe) &&..<o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:8;height:33.45pt'>
- <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Show structure, note that SlothfulPoint is now included<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Run & show effect<o:p></o:p></span></p>
- </td>
- <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'><o:p> </o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:9;height:33.45pt'>
- <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Show Point.moveBy history violoation<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l6 level1 lfo10;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Want to make sure that sets of private fields of classes implementing
- FigureElement only happen from within the set methods<b style='mso-bidi-font-weight:
- normal'><o:p></o:p></b></span></p>
- </td>
- <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'>declare warning: <o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'><span style='mso-spacerun:yes'>
- </span>set(private * FigureElement+.*) <o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'><span style='mso-spacerun:yes'>
- </span>&& !(withincode(* FigureElement+.set*(..)) || <span
- style='mso-tab-count:1'> </span><span style='mso-spacerun:yes'> </span><span
- style='mso-tab-count:2'> </span><span
- style='mso-spacerun:yes'> </span>withincode(FigureElement+.new(..))):<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:Courier;
- mso-bidi-font-family:Tahoma'><span style='mso-spacerun:yes'>
- </span>"should only assign to fields from set methods";<o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:10;height:33.45pt'>
- <td width=253 style='width:189.7pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l3 level1 lfo13;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Write before advice that does precondition checking on Points.<o:p></o:p></span></p>
- </td>
- <td width=447 colspan=2 style='width:335.35pt;background:#F7F7F7;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:33.45pt'>
- <p class=MsoNormal style='margin-left:7.5pt'><span style='font-family:"Courier New"'>before(int
- newValue): <br>
- <span style='mso-spacerun:yes'> </span>set(int Point.*) &&
- args(newValue) {<br>
- if (newValue < 0) {<br>
- throw new IAE("too
- small");<br>
- } <br>
- }</span><span style='font-size:10.0pt;font-family:Tahoma'><o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:11;height:15.85pt'>
- <td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:15.85pt'>
- <p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
- 7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
- line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
- font-family:Verdana;color:#383E4C'>demo: pluggable aspects</span></b><span
- style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:12;height:33.45pt'>
- <td width=350 colspan=2 style='width:262.5pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l10 level1 lfo12;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>World’s first fully interactive video game, now 41 years old..<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l10 level1 lfo12;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Explain spacewar <o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:40.5pt;text-indent:-.25in;mso-list:
- l10 level1 lfo12;tab-stops:list 40.5pt'><![if !supportLists]><span
- style='font-size:10.0pt;font-family:Symbol;mso-fareast-font-family:Symbol;
- mso-bidi-font-family:Symbol'><span style='mso-list:Ignore'>·<span
- style='font:7.0pt "Times New Roman"'>
- </span></span></span><![endif]><span style='font-size:10.0pt;font-family:
- Tahoma'>Launch with Ship.java and "Release.lst" selected and compiled.<span
- style='mso-spacerun:yes'> </span><o:p></o:p></span></p>
- </td>
- <td width=350 style='width:262.55pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <ul style='margin-top:0in' type=disc>
- <li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
- style='font-size:10.0pt;font-family:Tahoma'>Run <o:p></o:p></span></li>
- <li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
- style='font-size:10.0pt;font-family:Tahoma'>Show debug configuration in
- config designer<o:p></o:p></span></li>
- <li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
- style='font-size:10.0pt;font-family:Tahoma'>Select
- "Debug.lst", compile, and run again <o:p></o:p></span></li>
- <li class=MsoNormal style='mso-list:l7 level1 lfo11;tab-stops:list .5in'><span
- style='font-size:10.0pt;font-family:Tahoma'>Show debug window, menu, and
- method tracing<o:p></o:p></span></li>
- </ul>
- </td>
- </tr>
- <tr style='mso-yfti-irow:13;height:13.15pt'>
- <td width=703 colspan=3 style='width:527.25pt;background:#C8CEDC;padding:
- 1.5pt 1.5pt 1.5pt 1.5pt;height:13.15pt'>
- <p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-right:
- 7.5pt;mso-margin-bottom-alt:auto;margin-left:4.5pt;text-align:center;
- line-height:130%'><b><span style='font-size:8.5pt;line-height:130%;
- font-family:Verdana;color:#383E4C'>demo: crosscutting structure</span></b><span
- style='font-size:8.5pt;line-height:130%;font-family:Verdana'><o:p></o:p></span></p>
- </td>
- </tr>
- <tr style='mso-yfti-irow:14;mso-yfti-lastrow:yes;height:33.45pt'>
- <td width=350 colspan=2 style='width:262.5pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
- font-family:Tahoma'>•<span style='mso-tab-count:1'> </span>Explain
- annotations over program structure<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
- font-family:Tahoma'>•<span style='mso-tab-count:1'> </span>Explain
- links and associations, inheritance links<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
- font-family:Tahoma'>•<span style='mso-tab-count:1'> </span>Explain
- model genericity, different views<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
- font-family:Tahoma'>•<span style='mso-tab-count:1'> </span>Show
- inline annotations<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
- font-family:Tahoma'>•<span style='mso-tab-count:1'> </span>Show
- history navigation<o:p></o:p></span></p>
- </td>
- <td width=350 style='width:262.55pt;background:#F7F7F7;padding:1.5pt 1.5pt 1.5pt 1.5pt;
- height:33.45pt'>
- <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
- font-family:Tahoma'>•<span style='mso-tab-count:1'> </span>Show
- global views (multiple views of your code)<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
- font-family:Tahoma'>•<span style='mso-tab-count:1'> </span>Show
- refactoring by changing helmCommandsCut<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
- font-family:Tahoma'>•<span style='mso-tab-count:1'> </span>Show view
- synchronization, task-oriented views<o:p></o:p></span></p>
- <p class=MsoNormal style='margin-left:4.5pt'><span style='font-size:10.0pt;
- font-family:Tahoma'>•<span style='mso-tab-count:1'> </span>Discuss
- how it is harder in AJ (implicit invocation)<o:p></o:p></span></p>
- <p class=MsoNormal><span style='font-size:10.0pt;font-family:Tahoma'><span
- style='mso-spacerun:yes'> </span>•<span style='mso-tab-count:1'> </span>Show
- fluid documents (ISTL project)<o:p></o:p></span></p>
- </td>
- </tr>
- <![if !supportMisalignedColumns]>
- <tr height=0>
- <td width=257 style='border:none'></td>
- <td width=97 style='border:none'></td>
- <td width=354 style='border:none'></td>
- </tr>
- <![endif]>
- </table>
-
- </div>
-
- <p class=MsoNormal style='margin-right:-45.0pt'><o:p> </o:p></p>
-
- </div>
-
- </body>
-
- </html>
|