teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

TaskDaoなどがクラス名であることを明記し、区切りを太字にする事で目立たせた。

2015/07/24 12:43

投稿

eripong
eripong

スコア1546

answer CHANGED
@@ -11,7 +11,7 @@
11
11
 
12
12
  今回の場合であれば、以下の様になると思います。
13
13
 
14
- 1.クラスの分割
14
+ **1.クラスの分割**
15
15
    これはWebアプリで特に用いられる考え方ですが、
16
16
    MVCパターンというものがあります。
17
17
    大雑把に言うと、アプリケーションを
@@ -32,20 +32,21 @@
32
32
 
33
33
    今回のケースであれば、
34
34
 
35
-   モデル
35
+   モデル
36
36
      タスクをDBに作成、更新、削除するクラス(TaskDao)
37
37
      タスクを表すクラス(Task)
38
-   ビュー
38
+   ビュー
39
39
      タスクの一覧からカレンダーとして整形してHTMLを生成するクラス(CalendarRenderer)
40
-   コントローラ
40
+   コントローラ
41
-     画面から受け取ったPOST、GETなどのデータを、モデルが受け取れる形にしてモデルに渡し、
41
+     画面から受け取ったPOST、GETなどのデータを、モデルが受け取れる形にしてモデルに渡し、
42
- 結果をビューに渡すクラス(これはクラスにしないで直書きで良いかも)
42
+ 結果をビューに渡すクラス(これはクラスにしないで直書きで良いかも
43
+ ※それぞれの説明の後の括弧内に書いたのはクラス名です。
43
44
 
44
45
    というように分けられそうです。
45
46
    勿論、これが正解というものは無いので、違う分け方もありえます。
46
47
    クラス図を書いてみるのも良いでしょう。
47
48
 
48
- 2.メソッドの分割
49
+ **2.メソッドの分割**
49
50
    1.で分けたクラスに対して、どの様なメソッドがあれば良いか考えます。
50
51
    メソッド名と引数、戻り値、処理内容を簡単にまとめると良いと思います。
51
52
 
@@ -62,7 +63,7 @@
62
63
    どんな引数で呼ぶかを考えます。
63
64
     シーケンス図を書くのも良いと思います。
64
65
 
65
- 3.実装
66
+ **3.実装**
66
67
    ここまでで決めたことに従って、実装します。
67
68
    今回の場合はクラス化前のソースコードがあるので、
68
69
    その切り貼り+αになると思います。