仕事でプログラミングしていると別の人から急なタスク依頼が来たり、平行して担当していた開発でバグが見つかり急遽対応しなくてはいけなくなったりで差し込みが多いと思います。
そうなると、目の前のプログラミングに集中できなくなって
「あれっ、自分は今何を書こうとしていたんだっけ?」
ってなることがあると思います。特にスピード感のあるスタートアップにはあるあるではないでしょうか。
ちなみに僕も結構ありまして、一度上記の状態になってしまうと自分の開発速度が極端に落ちてしまうんですよね。。普段から如何に頭の中のメモリを頼っているかがよく分かる瞬間です。
そこで今回は、プログラミング中に差し込みがあったとしても目の前の開発速度をなるべく落とさないようにするコツについてシェアします。
自分が作ろうとしている機能の概要を、コメント文でメモ的に書いておく
そのコツとはずばり、メモを残すことです。プログラミングする段階って、何を作るべきかがほぼ明確になっている状態だと思います。
「1.◯◯Controllerに△△というメソッドを作る」
「2.□□Tableを作成する」
「3.tableから取得したデータをXXXという形に加工する」
「4.AAAというViewを作り、BBBというElementに区切って再利用できるようにする」
…といった具合の、若干抽象度のある詳細設計が頭の中にあると思います。
僕の場合はこのメモをコメント文にし、ソースコード内に日本語で記述しておくようにして忘れてしまうのを防いでます。よく、改修予定のControllerのaction内に書いちゃってますね。こんな感じです:
1 2 3 4 5 6 7 8 |
public function △△() { /* 1.□□Tableを作成する 2.tableから取得したデータをXXXという形に加工する 3.AAAというViewを作り、BBBというElementに区切って再利用できるようにする */ } |
勿論、実装が完了したら削除しちゃいます。あくまで
「開発途中で別タスクをせざるを得なくなり、何をどうするつもりでどこまで対応したのかをすぐに思い出せるようにする!」
ための手段なので。
機能の詳細設計がほぼ明確な場合、日本語ではなく英語でコメント文を書いておくと良い
1 2 3 4 5 6 7 8 9 10 |
public function △△() { /* $□□ = $this->□□->find(...); foreach ($□□ as $k => $□) { $□□[$k]['aaa'] = 'XXX'; } $this->redner('AAA'); // next: separate to BBB element into AAA */ } |
イメージこんな感じです↑
ほぼほぼ実装されているが、動作確認は一切やってない的なコードですね。英語でコメントを書くメリットは、
「具体的な実装方法までイメージがあるので、あとはイメージの通りに実装すればOKという状態をメモしておく」
ことにあります。もはやここまで仕上がったメモがあれば記憶のメモリが残っていようがいなかろうが関係なく、差し込み作業後にスムーズに目の前の開発業務へ戻れます。
コメント文をうまく活用し、効率の良い開発業務をこなせるようになろう
いかがでしたか?コード内のコメント文でなくとも、手元のメモ帳に詳細な実装方針を残しておくでも良いと思います。もし普段から頭の中がこんがらがりやすいことが多ければ、今回の方法をぜひ活用してみてください。実際、結構良い方向に変わると思います。