アプリをコーディングする時の段取り

はじめに

今回は技術というより、私がコーディングする時の段取りになります。

要件定義等はもう終わっていて、さあ、コード書くぞ!ってなってからの話です。

とはいえ、これは人それぞれ確立されたスタイルがあると思いますので、参考程度に読んで頂けたらと思います。

 

1 何のために、何を作るのかよく理解する

まず、どこを理解できていないのか、どこに時間がかかりそうなのか、本当にこれで良いのか、足りない物はないか、などに注意します。

早く良いプログラムを作る場合、別の作業をプログラム途中に挟むのは極力避けるべきです。そうはいっても仕事をしてたら急に別の仕事をしなくてはいけないとか、複数の開発を同時にしなくてはいけないとか、まだ仕様が決まってないなんてことがざらにあるので、準備万端!という状態でコーディングには入れないですが、わざわざ準備しないで入ることは無いと思います。

これを深く考えないで、とりあえず端っこから作っていくのが、昔の私のスタイルでした、でも今はこれをどれだけやったかで、その後のコーディングの捗り具合が違うので重要視しています。

 

1.5 サンプルプロジェクトを別に作り、出来るのかどうか不安な部分は先に検証しておく

1でやることですが、これは必要に応じてやります、極力不安要素は早めに潰しましょう。注意するべきは、別でプロジェクトを作るというところです、本番のプロジェクトで作ると一応動くけど、汚いプログラムがそのままになりがちです、本番に乗せる時に綺麗にしつつ乗せるようにしましょう。

 

2 必要なデータと画面表示とイベント処理は分けて役割を考える

要するにMVCですが、何が必要なのか考えてない状態でコーディングに入ると、場当たり的になって、スパゲティ化しやすいです、後で直そうなんて甘いことは考えない方が良いです。

 

3 何というクラスが何をしてくれたら完成するのかを考える。

2を考えた結果、モデルクラス(データを扱うクラス)、画面表示のクラスの名前を考えます。名前を適当につけてはいけません、簡潔にそのクラスが何をするのかが分かるようにしましょう。

 

4 クラスがやってくれる事TODOを箇条書きする。

例えば下記のような形で、役割をコメントで簡潔に書き、これをメソッドとします。

 

5 メソッド名を決める。

もちろんこれも適当に決めてはいけません。何を受け取って(引数)、何をしてくれて(処理)、何を返してくれるのか(戻り値)がわかりやすい名前にします。※Objective-cで書きました。

例えばで悪い例を出すと、「showCamera」というメソッドが「camera」でしかもコメントが無かったとします。これだけではカメラをどうするのか何もわかりません、作った本人もその日は覚えてると思いますが、数ヶ月もしたら忘れているでしょう。

補足として「何を返してくれるのか(戻り値)」をわかりやすくする場合は、下記のような名前を付けます。

 

6 メソッドの中で更に分けることが出来るなら、さらにTODOを箇条書きする。

メソッドの中でも処理がある程度分かれると思いますので、その場合は下記の様に書きます。例は細かめですが、あまり細かく書き過ぎないようにして下さい。

 

7 メソッド内でやることが多過ぎたり、複数箇所で同じ処理をする場合は外出しする。

例の感じだとそこまで行きませんが、一つのメソッドに何十、何百行となってしまうような場合は、メソッドを分けましょう。当然ですが、他のメソッドと処理が重複している場合も分けます。

 

8 実装できたら、実装部分のTODOだけ消していく

完成したら「TODO:」を消します。そうすることで、コメントを後で書く手間が省けます。終わってない部分の検索も容易に出来ます。

以上です、大分ざっくりとしてますが、こんな感じで私はやっています。

 

●この記事を書いた人