答えの無い質問となってしまいますが
開発の際どれくらいコメントを残してますか?
個人的にはソースコードから読み取れない処理に関してはコメントを入れるべきだと思いますがそれ以外はメソッド名や変数名の付け方で頑張った方いいと思ってます。
しかし、私のチームでは全てのメソッドにコメントを付けることが義務付けられています。
CakePHPでいうところのAction名にもコメントを付けるように言われているのですがどう思いますか?
できればコメントを極力書かない習慣にしたいのですが、説得させる情報が無いため色々とご教授いただけますでしょうか。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答8件
0
ベストアンサー
仰るように基本的にwhy not
以外書く必要はありません。
whyは不要、コード読めの精神ですね。
全てのメソッドにコメントを付ける
所謂PHPDocですね。
ツール通せばドキュメントが出来上がるので、SIerの現場等では徹底しておけばそれはそれで結構でかいメリットがあります。
他にもPHPStormではパラメータでクラスを指定しておくと、
クラスメソッドの補完が効きますし定義に飛べるようになり開発が楽になります。
まぁPHPDoc書く時はざっくりとした概要の紹介だけで十分です。
書きすぎるとメンテする時にコメントとコードを二重でメンテするはめになるので詳細は書かない方が良いでしょう。
詳細書きたければ単体のテストコードに時間掛けたほうが良いと思います。
投稿2017/11/29 04:14
総合スコア21398
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

0
できればコメントを極力書かない習慣にしたい
コメント不要論には、何か根底に誤解がある気がします。
コメントが減るのは結果であって、減らすのが目的ではないです。
もし、交通事故の多い場所に、「この先急カーブ」とか看板が多いとして、
たんに看板をなくしても、事故は減りません。むしろ増えるでしょう。
あるいは、咳を我慢したら風邪が治るか、ということです。
だから、リファクタリングなどによって、コメントの必要がなくなり、
結果的に減るのは良いです。コメントだけ消してもダメです。
しかしここで、現実問題として、リファクタリングする時間がないことも多く、
それならせめてコメントを残しておいてくれれば、
問題を探す時間や、うかつに変更して出たバグを潰す時間の浪費を避けられます。
コメントを書くのは多くの場合で最善ではないですが、基本的に善です。
コメント自体は、根本的解決でなく、対処療法的な手段ですが、
たんにそれを書かないのもまた、表面的な解決に過ぎません。
メソッド名や変数名の付け方で頑張った方いいと思ってます
それでもコメントにまだ抵抗があるとしたら、こう考えてください。
コメントは最終結果ではなく、リファクタリングの過程だと考えます。
何か難しい、分かりにくい、問題のある処理があったときに、
最初はまずコメントを書いてみる。実装コストが安いので気軽に試せます。
根本的な問題があると思った場合、コメントのままにせず、
さらに、説明的な変数にする、メソッドに切り出す、クラスに分ける、
ライブラリ化する……などと、より大きな単位にしていく場合があります。
つまり、コメントを書かないというより、コメントを書いて、
さらに大きな単位でまとめられないかを考えます。
これを最初から大きな単位で書くと、
不要なものを作ってしまいがちです。
コメント自体を書かないことが大事というより、
コメントから先を書くことが大事だと思います。
投稿2017/11/29 12:19
総合スコア5592
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/11/29 13:06

0
引数の意味や返り値など、どんなメソッドでも必要になるようなものを書くPHPDocという記法がありますので、義務付けられているのであればそれに従って書くのが最適解かと思います。
PHPStormやNetBeansなど、PHPに対応したIDEの場合、PHPDocから情報を読み取って、メソッド呼び出しのところでポップアップ表示したりというような機能があります。
投稿2017/11/29 04:15
総合スコア146544
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
コメントに関しては、つける派とつけない派にどうしてもわかれますね。
私はつける派です。
コメントの付け方やつける理由は以下の通り。
- 当たり前のことは書かない。aに1を代入する、とか。
aに1を代入するということは、つまりどういうことかを書く。
- コードを読めばわかる単純な処理でも書く。
ある程度の処理単位でコメントを入れることで、大まかなブロックができるので、可読性が上がります。
- 他人が見たときにわかりやすい。
自分が書いたコードなんて他人には即座に理解できないものです。
- 時間が経ってから自分が見てもわかりやすい。
例え自分がわかりやすく書いたコードでも、時間が経つと忘れているものです。
- コメントがなくて文句を言う人がいても、コメントがあって文句を言う人はいない。
仕事としてコードを書くなら当然お客さんがいるわけですから、納品物として文句を言わせないためにもコメントは必須。
投稿2017/11/29 05:13
総合スコア17000
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
個人でやっている場合にはほぼ残さないですね。
ERINGI5さんがおっしゃっている程度で十分だと思います。
どこまで書く書かないという判断はそのプロジェクトによって違うと思います。
結局最終的な目的にすべきなのは生産性ではないでしょうか。
コメントを書くことで生産性が下がるなら要らない。
コメントを書くことで生産性が上がるなら書くべきだと思います。
それは個人の生産性ではなく、今だけの生産性ではなく、製造の生産性だけではなく
プロジェクト全体・納品・管理・今後の保守・運用も含めた全てを加味した上での生産性です。
基本的にはプロジェクトが大きければ大きいほど、長ければ長いほど、コメントは重要になって来ると思います。
(コーディング規約やコメントルールを守るためのコストもかかって来ますが・・・)
小さくて短いプロジェクトなら恐らく書くのは無駄です。
プロジェクトによっては納品や管理に使われている場合もありますので
1人や数人の製造コストだけを見て判断すべきものではないと思います。
全てを鑑みてもコメントを書くコストが無駄ならば、やめるべきだと思います。
が、それでも政治的なものやルールを変えるためのハードルやコストなどもありますので
トータルで考えると、プロジェクト途中でルールを変えるのはあまり得策だとは思いません。
(小さいプロジェクトならできるかもしれませんが。)
新しくプロジェクトが立ち上がる時に考えるべきことなのかなとは思います。
投稿2017/11/29 04:41
編集2017/11/29 05:41総合スコア928
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
コードドキュメンタ(コード内のコメントをもとに、コード解析結果をドキュメント化するツール)のために書くコメントというのもありますので、一概にはコメントの量を云々は言えません。
JavaDoc や PHPDoc は、こういうドキュメント化のためのコメントです。
その意味では、CakePHPにおけるActionにもつけることは必要だといえるでしょう。それはすなわち、Action一覧を作る際の資料になるものだからです。
メソッドの in/out 、概要を明示するコメントは必要でしょうが、メソッド内部のロジックに絡む部分まで細かくコメントを入れるかといえば、それは入れないほうが良いでしょう。コードを読む際に補助となる程度があればよいかと思います。
例えば if 分岐で、「なぜこのif判定になるのか」を書いておくなどです。機能の詳細設計と見比べたときに、正しい if 判定をしているのかどうかわかりやすくなりますし。
投稿2017/11/29 04:31
総合スコア13707
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ソースコードは今後誰が読むのかわからないものですから, コメントが多いに越したことはないと思います. どうせ後から消すことも出来ますし.
それよりも「量を減らす」のではなく「質を上げる」ほうが重要であろうかと. コメントの履歴が残るような管理は絶対にやめるべきですが, コーダーさんの意図を正確に後世に伝える目的であれば積極的に記述して良いかと思います.
投稿2017/11/29 04:21
総合スコア4756
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。