回答編集履歴
2
内容を拡充
test
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
NOTE:
|
2
2
|
|
3
|
-
以下は私のやり方ですから, あくまで参考程度に.
|
3
|
+
以下は私のやり方ですから, あくまで参考程度に.
|
4
|
+
|
5
|
+
やりたいことに対する**要件すらおぼろげ**な前提です.
|
4
6
|
|
5
7
|
|
6
8
|
|
@@ -18,7 +20,13 @@
|
|
18
20
|
|
19
21
|
なお, 記述したコードは実際に動作させ, その処理フローやライブラリの発するエラー等について目を光らせます. コツとしては常にコードを少しずつ投入して問題の発生箇所範囲を狭めておくことです.
|
20
22
|
|
23
|
+
|
24
|
+
|
25
|
+
NOTE:
|
26
|
+
|
27
|
+
この過程で判らない部分については調査を掘り下げたり, もっと小さな動作検証タスクを挟むようにします.
|
28
|
+
|
21
|
-
※知らない分野でのプログラミングではここが最も辛いところです.
|
29
|
+
※知らない分野でのプログラミングではここが最も辛いところで, 場合によりかなりの時間を要します.
|
22
30
|
|
23
31
|
|
24
32
|
|
@@ -26,7 +34,7 @@
|
|
26
34
|
|
27
35
|
|
28
36
|
|
29
|
-
ある程度処理の流れが見え曲がりなりにも目的とした出力が得られたら, これまでのコードは一旦忘れ, 処理に必要なインターフェース(入力パラメータ, 出力形式)について考察し, 決定します.
|
37
|
+
ある程度処理の流れが見え曲がりなりにも目的とした出力が得られたら, これまでのコードは一旦忘れ, 処理に必要なインターフェース(入力パラメータ, 出力形式つまり**プログラム要件**)について考察し, 決定します. 一度は処理の流れを把握しているので, そのプログラムを使うに当たって必要な要件はある程度明確化されているはずです.
|
30
38
|
|
31
39
|
|
32
40
|
|
1
コメントを追加, 内容推敲など
test
CHANGED
@@ -12,7 +12,11 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
そこに必要となりそうな処理やライブラリを当てはめ, うまく行きそうにない場合はしっくりくるまでフローを入れ替えていきます. この作業の中で, 目的としている機能を実現する上での勘所がおぼろげながら見えてくるため, それらを逐一メモするなりコメントするなりして残しておきます.
|
15
|
+
そこに必要となりそうな処理やライブラリを当てはめ, うまく行きそうにない場合はしっくりくるまでフローを入れ替えていきます. この作業の中で, 目的としている機能を実現する上での勘所がおぼろげながら見えてくるため, それらを逐一メモするなりコメントするなりして残しておきます.
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
なお, 記述したコードは実際に動作させ, その処理フローやライブラリの発するエラー等について目を光らせます. コツとしては常にコードを少しずつ投入して問題の発生箇所範囲を狭めておくことです.
|
16
20
|
|
17
21
|
※知らない分野でのプログラミングではここが最も辛いところです.
|
18
22
|
|
@@ -31,3 +35,11 @@
|
|
31
35
|
|
32
36
|
|
33
37
|
後はその設計のもとでコードを記述していきます. 既に基礎となる部分についての考証は済んでいるため, さほど苦労することなく作業を続けることが可能です. またわからないことがあれば先ほどの動くコードを参考とします.
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
総括
|
42
|
+
|
43
|
+
まずは短くても良いから**動くもの**を作れ
|
44
|
+
|
45
|
+
動くものさえあればそこを足がかりに後は何とかなる
|