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

回答編集履歴

2

内容を拡充

2018/04/20 04:30

投稿

defghi1977
defghi1977

スコア4756

answer CHANGED
@@ -1,5 +1,6 @@
1
1
  NOTE:
2
- 以下は私のやり方ですから, あくまで参考程度に.
2
+ 以下は私のやり方ですから, あくまで参考程度に.
3
+ やりたいことに対する**要件すらおぼろげ**な前提です.
3
4
 
4
5
  ---
5
6
 
@@ -8,11 +9,14 @@
8
9
  そこに必要となりそうな処理やライブラリを当てはめ, うまく行きそうにない場合はしっくりくるまでフローを入れ替えていきます. この作業の中で, 目的としている機能を実現する上での勘所がおぼろげながら見えてくるため, それらを逐一メモするなりコメントするなりして残しておきます.
9
10
 
10
11
  なお, 記述したコードは実際に動作させ, その処理フローやライブラリの発するエラー等について目を光らせます. コツとしては常にコードを少しずつ投入して問題の発生箇所範囲を狭めておくことです.
11
- ※知らない分野でのプログラミングではここが最も辛いところです.
12
12
 
13
+ NOTE:
14
+ この過程で判らない部分については調査を掘り下げたり, もっと小さな動作検証タスクを挟むようにします.
15
+ ※知らない分野でのプログラミングではここが最も辛いところで, 場合によりかなりの時間を要します.
16
+
13
17
  ---
14
18
 
15
- ある程度処理の流れが見え曲がりなりにも目的とした出力が得られたら, これまでのコードは一旦忘れ, 処理に必要なインターフェース(入力パラメータ, 出力形式)について考察し, 決定します.
19
+ ある程度処理の流れが見え曲がりなりにも目的とした出力が得られたら, これまでのコードは一旦忘れ, 処理に必要なインターフェース(入力パラメータ, 出力形式つまり**プログラム要件**)について考察し, 決定します. 一度は処理の流れを把握しているので, そのプログラムを使うに当たって必要な要件はある程度明確化されているはずです.
16
20
 
17
21
  次にそのインターフェースの元できちんとした設計をします. 既に処理の勘所については検証済みであるため, その内容が設計に反映されるようにします. テストを作るのであればこの時点でしょう.
18
22
 

1

コメントを追加, 内容推敲など

2018/04/20 04:30

投稿

defghi1977
defghi1977

スコア4756

answer CHANGED
@@ -5,7 +5,9 @@
5
5
 
6
6
  まずは条件を大きく縛り(画像処理であればサイズ・色等は全て固定等), その条件の元で必要となりそうなフローを(あとから修正する前提で)スケルトンコードとして記述します. 何も解らない時点で条件を曖昧にしておくと考察対象に対する焦点がぼけ, 結局わからないままに終わるからです.
7
7
 
8
- そこに必要となりそうな処理やライブラリを当てはめ, うまく行きそうにない場合はしっくりくるまでフローを入れ替えていきます. この作業の中で, 目的としている機能を実現する上での勘所がおぼろげながら見えてくるため, それらを逐一メモするなりコメントするなりして残しておきます. なお, 記述したコードは実際に動作させ, その処理フローやライブラリの発するエラー等について目を光らせます. コツとしては常にコードを少しずつ投入して問題の発生箇所範囲を狭めておくことです.
8
+ そこに必要となりそうな処理やライブラリを当てはめ, うまく行きそうにない場合はしっくりくるまでフローを入れ替えていきます. この作業の中で, 目的としている機能を実現する上での勘所がおぼろげながら見えてくるため, それらを逐一メモするなりコメントするなりして残しておきます.
9
+
10
+ なお, 記述したコードは実際に動作させ, その処理フローやライブラリの発するエラー等について目を光らせます. コツとしては常にコードを少しずつ投入して問題の発生箇所範囲を狭めておくことです.
9
11
  ※知らない分野でのプログラミングではここが最も辛いところです.
10
12
 
11
13
  ---
@@ -14,4 +16,8 @@
14
16
 
15
17
  次にそのインターフェースの元できちんとした設計をします. 既に処理の勘所については検証済みであるため, その内容が設計に反映されるようにします. テストを作るのであればこの時点でしょう.
16
18
 
17
- 後はその設計のもとでコードを記述していきます. 既に基礎となる部分についての考証は済んでいるため, さほど苦労することなく作業を続けることが可能です. またわからないことがあれば先ほどの動くコードを参考とします.
19
+ 後はその設計のもとでコードを記述していきます. 既に基礎となる部分についての考証は済んでいるため, さほど苦労することなく作業を続けることが可能です. またわからないことがあれば先ほどの動くコードを参考とします.
20
+
21
+ 総括
22
+ まずは短くても良いから**動くもの**を作れ
23
+ 動くものさえあればそこを足がかりに後は何とかなる