Newer
Older
TraceDebuggerExperiment / courseA / ArgoUML_Forward / problem2 / ArgoUML2_Forward_Delta.html
  1. <!DOCTYPE HTML>
  2. <html lang = "ja">
  3. <head>
  4. <title>課題A2 (接近過程抽出)</title>
  5. <meta charset = "UTF-8">
  6. <link rel = "stylesheet" type = "text/css" href = "../../../prettify.css">
  7. </head>
  8. <body>
  9. <h1>課題A2 (接近過程抽出)</h1>
  10.  
  11. <hr>
  12. <h2>接近過程抽出</h2>
  13. <p>
  14. Fig クラスはグラフィックエディタ上の図形を表すGEFの内部のクラスです.<br>
  15. また, FigClass クラスはクラス図上に配置された「クラス」を表す ArgoUML のクラスで, Fig クラスの子孫クラスにあたります.<br>
  16. </p>
  17.  
  18. <p>
  19. <p class = "explanation">
  20. 課題A2終了直後は下図のような状態になっているはずです.<br>
  21. 右上にあるパースペクティブを右クリックし, いったん「トレースデバッガ(順方向)」のパースペクティブを閉じてください.<br>
  22. <div class = "image"><img src = "./images/images_problem2_delta_pre/ArgoUML_2_delta_02.png" class = "threeQuartersSize"></div>
  23. </p>
  24. <p class = "explanation">
  25. ここで, 「トレースデバッガ(逆方向)」のパースペクティブを開いてください.<br>
  26. <div class = "image"><img src = "./images/images_problem2_delta_pre/ArgoUML_2_delta_03.png" class = "threeQuartersSize"></div>
  27. </p>
  28. <p class = "explanation">
  29. その状態のままで, ブレークポイントビュー上にある「ブレークポイントを取り入れる」をクリックしてください.<br>
  30. ブレークポイントを取り入れたら, デバッグ実行してください.<br>
  31. まずは, SelectionManager クラスのインスタンス (id = 4310438) のフィールド selections が参照している ArrayList に<br>
  32. SelectionClass クラスのインスタンス (id = 1672744985) が追加されるまでの過程を見ていきます.<br>
  33. デバッグ実行したら, そのまま再開ボタンを2回押してください.<br>
  34. すると, 現在の実行時点が2回目の SelectionManager クラスの addFig(Fig) メソッドの130行目に移ります.<br>
  35. <div class = "image"><img src = "./images/images_problem2_delta_pre/ArgoUML_2_delta_05.png" class = "threeQuartersSize"></div>
  36. </p>
  37. <p class = "explanation">
  38. 現在は, 2回目の SelectionManager クラスの addFig(Fig) メソッドの130行目にいます.<br>
  39. ここで, ステップネクストを3回押してください.<br>
  40. <div class = "image"><img src = "./images/images_problem2_delta_pre/ArgoUML_2_delta_06.png" class = "threeQuartersSize"></div>
  41. </p>
  42. <p class = "explanation">
  43. ここで, 変数ビュー上で「呼び出し前」を開いて, 引数を右クリックしてください.<br>
  44. 右クリックすると, ポップアップメニューが出てくるので, 上の方の「オブジェクトの接近過程抽出」をクリックしてください.<br>
  45. <div class = "image"><img src = "./images/images_problem2_delta_pre/ArgoUML_2_delta_09.png" class = "threeQuartersSize"></div>
  46. </p>
  47. <p class = "explanation">
  48. 実際に「オブジェクトの接近過程抽出」を実行すると, 下図のような状態になります.<br>
  49. <div class = "image"><img src = "./images/images_problem2_delta/ArgoUML_2_delta_01.png" class = "threeQuartersSize"></div>
  50. </p>
  51. <p class = "explanation">
  52. 「オブジェクトの接近過程」ビュー上の「開始時点」をクリックしてください.<br>
  53. <div class = "image"><img src = "./images/images_problem2_delta/ArgoUML_2_delta_02.png" class = "threeQuartersSize"></div>
  54. </p>
  55. <p class = "explanation">
  56. 「オブジェクトの接近過程」ビュー上の「参照先側001」から「参照先側040」までを順番にクリックしてください.<br>
  57. <div class = "image"><img src = "./images/images_problem2_delta/ArgoUML_2_delta_04.png" class = "threeQuartersSize"></div>
  58. <div class = "image"><img src = "./images/images_problem2_delta/ArgoUML_2_delta_05.png" class = "threeQuartersSize"></div>
  59. </p>
  60. <p class = "explanation">
  61. 「オブジェクトの接近過程」ビュー上の「参照元側001」から「参照元側009」までを順番にクリックしてください.<br>
  62. <div class = "image"><img src = "./images/images_problem2_delta/ArgoUML_2_delta_07.png" class = "threeQuartersSize"></div>
  63. <div class = "image"><img src = "./images/images_problem2_delta/ArgoUML_2_delta_08.png" class = "threeQuartersSize"></div>
  64. </p>
  65. <p class = "explanation">
  66. 「オブジェクトの接近過程」ビュー上の「参照時点」をクリックしてください.<br>
  67. <div class = "image"><img src = "./images/images_problem2_delta/ArgoUML_2_delta_09.png" class = "threeQuartersSize"></div>
  68. </p>
  69. <p class = "explanation">
  70. ここまでで, SelectionManager クラスのインスタンス (id = 4310438) のフィールド selections が参照している ArrayList に<br>
  71. SelectionClass クラスのインスタンス (id = 1672744985) が追加されるまでの過程を見てきました.<br>
  72. ここで, 課題A2の接近過程抽出は終了です.<br>
  73. 「オブジェクトの接近過程」ビューを全て閉じ, そのあとデバッグ実行を終了してください.<br>
  74. <!--デバッグ実行を終了したら, この「トレースデバッガ(逆方向)」のパースペクティブを閉じてください.<br>-->
  75. <div class = "image"><img src = "./images/images_problem2_delta/ArgoUML_2_delta_11.png" class = "threeQuartersSize"></div>
  76. </p>
  77. </p>
  78. </body>
  79. </html>