diff --git a/courseA/EnvironmentAlgolike.html b/courseA/EnvironmentAlgolike.html index a460e39..4a5e5fa 100644 --- a/courseA/EnvironmentAlgolike.html +++ b/courseA/EnvironmentAlgolike.html @@ -1,8 +1,9 @@ -Argolikeの環境構築とテスト - + Argolikeの環境構築とテスト + + -

ArgoUMLはJavaで書かれたオープンソースのUMLエディタです.

-

ArgoUMLを起動すると,まずクラス図の編集画面が開きます.

- -

編集画面上で行える操作はモードによって異なります.

-

モードの切り替えは,ツールバーのボタンをクリックすることによって行うことができます.

- -

例えばクラス配置モードでは,編集画面上をクリックすると,クリックした位置にクラスを配置することができます(クラス配置機能).

- -

クラスを配置すると選択モードに戻ります.

-

選択モードでは,編集画面上に配置されたクラスをクリックすると,そのクラスを選択状態にすることができます(選択機能).

- -

選択状態のクラスは,Delキーを押すことで削除することができます(削除機能).

- +

Algolikeの環境構築とテスト

+

AlgolikeのGithubのリポジトリはこちらにありますので,クローンしてお手元の開発環境で動作確認を行ってください.

+ +

AlgolikeはGradleプロジェクトとして作成しています.
+

+ プログラムを実行する際は,Gradleタスクの中から「application/run」を実行してください.
+ +

+

Algolikeのテストコードは /src/test/java/MainTest.java にあります.JUnitでテストすることができます.

+

Algolikeのテストシナリオ

+

MainTest.javaではAlgolikeにおける以下の一連の動作をテストしています. +

    +
  1. 自分はカードを1枚引き,自分から見て右から1番目にあるCPUのカードに対して「1」を宣言する.
  2. +
  3. 自分のアタックは失敗する.
  4. +
  5. CPUはカードを1枚引き,自分の手札の左から3番目のカードに対して「2」を宣言する.
  6. +
  7. CPUのアタックは失敗する.
  8. +
  9. 自分はカードを1枚引き,右から2番目にあるCPUのカードに対して「3」を宣言する.
  10. +
  11. 自分のアタックは成功する.
  12. +
  13. CPUはカードを1枚引き,自分の手札の左から1番目のカードに対して「2」を宣言する.
  14. +
  15. CPUのアタックは失敗する.
  16. +
  17. 自分は左から1番目のカードをアタックに使用し,CPUの右から1番目のカードに対して「1」を宣言する.
  18. +
  19. 自分のアタックは成功する.
  20. +
  21. CPUの手札が全て表になったので,CPUは敗北する.
  22. +
+

+

-次へ +次へ

diff --git a/images/algo_class_pull.pu b/images/algo_class_pull.pu new file mode 100644 index 0000000..35f3fde --- /dev/null +++ b/images/algo_class_pull.pu @@ -0,0 +1,25 @@ +@startuml +title Algolikeクラス図(PULL) +class Algo{ + Algo() + getHandsA() : List + getLoseA() : boolean +} +class HandsA{ + value : List + HandsA() + updateResultByDrawingA(...) : void + updateResultByDrawingB(...) : void + updateResultBySelectingA(...) : void + updateResultBySelectingB(...) : void + getValue() : List +} +class LoseA{ + LoseA(handsA : HandsA) + getValue() : boolean +} +Algo -->"1" HandsA :handsA +Algo -->"1" LoseA :loseA +HandsA <-"1" LoseA : handsA + +@enduml \ No newline at end of file diff --git a/images/algo_class_push.pu b/images/algo_class_push.pu new file mode 100644 index 0000000..c3721bf --- /dev/null +++ b/images/algo_class_push.pu @@ -0,0 +1,27 @@ +@startuml +title Algolikeクラス図(PUSH) +class Algo{ + Algo() + getHandsA() : List + getLoseA() : boolean +} +class HandsA{ + value : List + HandsA(loseA : LoseA) + updateResultByDrawingA(...) : void + updateResultByDrawingB(...) : void + updateResultBySelectingA(...): void + updateResultBySelectingB(...): void + getValue() : List +} +class LoseA{ + value : boolean + LoseA() + updateHandsA(handsA : HandsA) : void + getValue() : boolean +} +Algo -->"1" HandsA :handsA +Algo -->"1" LoseA :loseA +HandsA ->"1" LoseA : loseA + +@enduml \ No newline at end of file diff --git a/images/algo_pll_class.pu b/images/algo_pll_class.pu deleted file mode 100644 index 252f417..0000000 --- a/images/algo_pll_class.pu +++ /dev/null @@ -1,24 +0,0 @@ -@startuml -class Algo{ - Algo() - List getHandsA() - boolean getLoseA() -} -class HandsA{ - List value - HandsA() - void updateResultByDrawingA(...) - void updateResultByDrawingB(...) - void updateResultBySelectingA(...) - void updateResultBySelectingB(...) - List getValue() -} -class LoseA{ - LoseA() - boolean getValue() -} -Algo -->"1" HandsA :handsA -Algo -->"1" LoseA :loseA -HandsA <-"1" LoseA : handsA - -@enduml \ No newline at end of file diff --git a/images/algo_pll_seq.pu b/images/algo_pll_seq.pu deleted file mode 100644 index e69de29..0000000 --- a/images/algo_pll_seq.pu +++ /dev/null diff --git a/images/algo_psh_class.pu b/images/algo_psh_class.pu deleted file mode 100644 index d82276c..0000000 --- a/images/algo_psh_class.pu +++ /dev/null @@ -1,26 +0,0 @@ -@startuml -class Algo{ - Algo() - List getHandsA() - boolean getLoseA() -} -class HandsA{ - List value - HandsA(LoseA loseA) - void updateResultBy...(...) - void updateResultBy...(...) - void updateResultBy...(...) - void updateResultBy...(...) - List getValue() -} -class LoseA{ - boolean value - LoseA() - void updateHandsA(HandsA handsA) - boolean getValue() -} -Algo -->"1" HandsA :handsA -Algo -->"1" LoseA :loseA -HandsA ->"1" LoseA : loseA - -@enduml \ No newline at end of file diff --git a/images/algo_psh_seq.pu b/images/algo_psh_seq.pu deleted file mode 100644 index 71fc7e3..0000000 --- a/images/algo_psh_seq.pu +++ /dev/null @@ -1,25 +0,0 @@ -@startuml -title Algo-PUSHシーケンス図 -hide footbox -participant "handsA:HandsA" as handsA -participant "loseA:LoseA" as loseA -[-> handsA : updateResultBy...(...) -activate handsA - -handsA -> loseA : updateHandsA(List handsA) -activate loseA - -loseA --> handsA -deactivate loseA - -handsA -->[ -deactivate handsA - -loseA <-] : getValue() -activate loseA - -loseA -->] : boolean -deactivate loseA - - -@enduml \ No newline at end of file diff --git a/images/algo_seq_pull.pu b/images/algo_seq_pull.pu new file mode 100644 index 0000000..f3889ab --- /dev/null +++ b/images/algo_seq_pull.pu @@ -0,0 +1,26 @@ +@startuml +title Algolikeシーケンス図(PULL) +hide footbox +participant "handsA:HandsA" as handsA +participant "loseA:LoseA" as loseA +[-> handsA : updateResultBy...(...) +activate handsA + +handsA -->[ +deactivate handsA + +loseA <-] : getValue() +activate loseA + +handsA <- loseA : getValue() +activate handsA + +loseA <-- handsA : List +deactivate handsA + + +loseA -->] : boolean +deactivate loseA + + +@enduml \ No newline at end of file diff --git a/images/algo_seq_push.pu b/images/algo_seq_push.pu new file mode 100644 index 0000000..f598b4c --- /dev/null +++ b/images/algo_seq_push.pu @@ -0,0 +1,25 @@ +@startuml +title Algolikeシーケンス図(PUSH) +hide footbox +participant "handsA:HandsA" as handsA +participant "loseA:LoseA" as loseA +[-> handsA : updateResultBy...(...) +activate handsA + +handsA -> loseA : updateHandsA(handsA : List) +activate loseA + +loseA --> handsA +deactivate loseA + +handsA -->[ +deactivate handsA + +loseA <-] : getValue() +activate loseA + +loseA -->] : boolean +deactivate loseA + + +@enduml \ No newline at end of file