diff --git a/courseA/DescriptionAlgolike.html b/courseA/DescriptionAlgolike.html index 031d2cb..08d5a02 100644 --- a/courseA/DescriptionAlgolike.html +++ b/courseA/DescriptionAlgolike.html @@ -11,6 +11,7 @@ }
+「Algolike」は,カードゲーム「algo」を基にしたゲームプログラムです.
Algolikeでは,「0」から「11」までの数字が書かれた計12枚のカードを用いて,プレイヤーとCPUが対戦します.
diff --git a/courseA/DescriptionStockManagement.html b/courseA/DescriptionStockManagement.html index 13dccad..7c05608 100644 --- a/courseA/DescriptionStockManagement.html +++ b/courseA/DescriptionStockManagement.html @@ -11,12 +11,13 @@ } +「StockManagement」は,ソフトウェア工学分野において共通問題として用いられる酒屋の在庫問題を一部簡略化し,
Javaを用いて実装したGUIアプリケーションです.
StockManagementでは,倉庫に対するお酒の搬入処理と,出庫依頼を行うことができます.
+StockManagementでは,ある酒屋の倉庫に対するお酒の搬入処理と,出庫依頼を行うことができます.
- お酒の在庫は,品名と数量で管理されます.プログラムはどのお酒の在庫もない状態から始まります.
+
お酒の在庫は,品名と数量で管理されます.StockManagementを起動するとどのお酒の在庫もない状態から始まります.
お酒の在庫の状態は画面下部左側に表形式で表示されています.
倉庫にコンテナの搬入があった場合は,画面上部左側にコンテナ内のお酒の品名と数量を入力します.
受付係が出庫依頼を受けた場合は,画面上部中央に依頼されたお酒の品名と数量を入力します.
diff --git a/courseA/EnvironmentAlgolike.html b/courseA/EnvironmentAlgolike.html
index 4a5e5fa..0c67566 100644
--- a/courseA/EnvironmentAlgolike.html
+++ b/courseA/EnvironmentAlgolike.html
@@ -1,7 +1,7 @@
AlgolikeのGithubのリポジトリはこちらにありますので,クローンしてお手元の開発環境で動作確認を行ってください.
+Algolike の Github のリポジトリはこちらです.クローンしてお手元の開発環境でビルドをし,動作確認を行ってください.
- AlgolikeはGradleプロジェクトとして作成しています.
-
Algolike は Gradle プロジェクトとして作成しています.
+
Algolikeのテストコードは /src/test/java/MainTest.java にあります.JUnitでテストすることができます.
-MainTest.javaではAlgolikeにおける以下の一連の動作をテストしています. +
Algolike のテストコードは /src/test/java/MainTest.java にあります.JUnitでテストすることができます.
+MainTest.java では Algolike における以下の一連の動作をテストしています.
StockManagement の Github のリポジトリはこちらです.クローンしてお手元の開発環境でビルドをし,動作確認を行ってください.
+ + StockManagement は Gradle プロジェクトとして作成しています.
+
StockManagement のテストコードは /src/test/java/MainTest.java にあります.JUnitでテストすることができます.
+MainTest.java では StockManagement における以下の一連の動作をテストしています. +
- アンケート回答 + アンケート回答
@@ -55,6 +54,7 @@
現時点ではPULL型のデータ転送で実装されているため,LoseA クラスの getValue() メソッドから HandsA クラスの getValue() メソッドを呼び出すために LoseA クラスが HandsA クラスを参照しています.
ここで Algo クラスは,初期化時に HandsA クラスや LoseA クラスのインスタンスを生成し,それらのインスタンスを関連付ける役割を担っています.
また,HandsA クラスや LoseA クラスにアクセスするための入口(Facade)としての役割も担っています.
+ Algo,HandsA,LoseA クラスのいずれも resources パッケージの中に入っています.
これを,以下のクラス図とシーケンス図に示すようなPUSH型のデータ転送になるよう,手作業でリファクタリングを行っていただきます.
diff --git a/courseB/ProblemB2.html b/courseB/ProblemB2.html
index 8ebf2aa..29b1d97 100644
--- a/courseB/ProblemB2.html
+++ b/courseB/ProblemB2.html
@@ -45,7 +45,6 @@
です.
開発環境を立ち上げてソースコードの確認をしていただいて構いませんが,ソースコードの変更は時間計測の準備ができるまで行わないで下さい.
- Algo,HandsA,LoseA クラスのいずれも resources パッケージの中に入っています.
リファクタリングの作業手順を以下に説明します.
@@ -55,6 +54,7 @@
現時点ではPUSH型のデータ転送で実装されているため,HandsA クラスの updateResultBy...() メソッドから LoseA クラスの updateHandsA() メソッドを呼び出すために HandsA クラスが LoseA クラスを参照していています.
ここで Algo クラスは,初期化時に HandsA クラスや LoseA クラスのインスタンスを生成し,それらのインスタンスを関連付ける役割を担っています.
また,HandsA クラスや LoseA クラスにアクセスするための入口(Facade)としての役割も担っています.
+ Algo,HandsA,LoseA クラスのいずれも resources パッケージの中に入っています.
これを,以下のクラス図とシーケンス図に示すようなPULL型のデータ転送になるよう,手作業でリファクタリングを行っていただきます.
diff --git a/images/stock_class_pull.jpg b/images/stock_class_pull.jpg
new file mode 100644
index 0000000..6a423b8
--- /dev/null
+++ b/images/stock_class_pull.jpg
Binary files differ
diff --git a/images/stock_class_pull.pu b/images/stock_class_pull.pu
new file mode 100644
index 0000000..abaa0f9
--- /dev/null
+++ b/images/stock_class_pull.pu
@@ -0,0 +1,23 @@
+@startuml
+title StockManagementクラス図(PULL)
+class StockManagement{
+ StockManagement()
+ getHandling() : ItemHandling
+ getShipping() : Item
+}
+class Handling{
+ value : ItemHandling
+ Handling()
+ updateAvailable(...) : void
+ updateRequest(...) : void
+ getValue() : ItemHandling
+}
+class Shipping{
+ Shipping(handling : Handling)
+ getValue() : Item
+}
+StockManagement -->"1" Handling :handling
+StockManagement -->"1" Shipping :shipping
+Handling <-"1" Shipping : handling
+
+@enduml
\ No newline at end of file
diff --git a/images/stock_class_push.jpg b/images/stock_class_push.jpg
new file mode 100644
index 0000000..4d47c9a
--- /dev/null
+++ b/images/stock_class_push.jpg
Binary files differ
diff --git a/images/stock_class_push.pu b/images/stock_class_push.pu
new file mode 100644
index 0000000..b9629cb
--- /dev/null
+++ b/images/stock_class_push.pu
@@ -0,0 +1,25 @@
+@startuml
+title StockManagementクラス図(PUSH)
+class StockManagement{
+ StockManagement()
+ getHandling() : ItemHandling
+ getShipping() : Item
+}
+class Handling{
+ value : ItemHandling
+ Handling(shipping : Shipping)
+ updateAvailable(...) : void
+ updateRequest(...) : void
+ getValue() : ItemHandling
+}
+class Shipping{
+ value : Item
+ Shipping()
+ updateHandling(itemHandling : ItemHandling) : void
+ getValue() : Item
+}
+StockManagement -->"1" Handling :handling
+StockManagement -->"1" Shipping :shipping
+Handling ->"1" Shipping : shipping
+
+@enduml
\ No newline at end of file
diff --git a/images/stock_seq_pull.jpg b/images/stock_seq_pull.jpg
new file mode 100644
index 0000000..13634a5
--- /dev/null
+++ b/images/stock_seq_pull.jpg
Binary files differ
diff --git a/images/stock_seq_pull.pu b/images/stock_seq_pull.pu
new file mode 100644
index 0000000..e234562
--- /dev/null
+++ b/images/stock_seq_pull.pu
@@ -0,0 +1,26 @@
+@startuml
+title StockManagerシーケンス図(PULL)
+hide footbox
+participant "handling:Handling" as handling
+participant "shipping:Shipping" as shipping
+[-> handling : update...(...)
+activate handling
+
+handling -->[
+deactivate handling
+
+shipping <-] : getValue()
+activate shipping
+
+handling <- shipping : getValue()
+activate shipping
+
+shipping <-- handling : ItemHandling
+deactivate handling
+
+
+shipping -->] : Item
+deactivate shipping
+
+
+@enduml
\ No newline at end of file
diff --git a/images/stock_seq_push.jpg b/images/stock_seq_push.jpg
new file mode 100644
index 0000000..9ce6804
--- /dev/null
+++ b/images/stock_seq_push.jpg
Binary files differ
diff --git a/images/stock_seq_push.pu b/images/stock_seq_push.pu
new file mode 100644
index 0000000..77c62e5
--- /dev/null
+++ b/images/stock_seq_push.pu
@@ -0,0 +1,25 @@
+@startuml
+title StockManagerシーケンス図(PUSH)
+hide footbox
+participant "handling:Handling" as handling
+participant "shipping:Shipping" as shipping
+[-> handling : update...(...)
+activate handling
+
+handling -> shipping : updateHandling(itemHandling : ItemHandling)
+activate shipping
+
+shipping --> handling
+deactivate shipping
+
+handling -->[
+deactivate handling
+
+shipping <-] : getValue()
+activate shipping
+
+shipping -->] : Item
+deactivate shipping
+
+
+@enduml
\ No newline at end of file