コードの迷宮で賢い開発者は地図を描く
When code is a maze, smart developers make maps

現代のコードは分離パターンにより複雑化し、開発者は迷宮を彷徨う。著者は、コメントを道しるべ、ドキュメントを地図と位置づけ、時間の無駄を減らす重要性を説く。具体的なコメントとドキュメントの実践的アドバイスを提供し、迷宮での効率的なナビゲーションを促す。
コメントを拒否する動きもあるが、迷宮では道しるべが不可欠だ。
HNでの議論
45- tromp
コードが迷宮であるとき は私の1988年IOCCC作品を説明している [1]
char*M,A,Z,E=40,J[40],T[40];main(C){for(*J=A=scanf(M="%d",&C);
-- E; J[ E] =T
[E ]= E) printf("._"); for(;(A-=Z=!Z) || (printf("\n|"
) , A = 39 ,C --
) ; Z || printf (M ))M[Z]=Z[A-(E =A[J-Z])&&!C
& A == T[ A]
|6<<27<rand()||!C&!Z?J[T[E]=T[A]]=E,J[T[A]=A-Z]=A,"_.":" |"];}
- jorisw
賢い開発者は迷宮を書かない。
> コードにおいて、コメントは道しるべだ
いや。命名と優れたアーキテクチャだ。直感的なフォルダツリー。簡潔なドキュメント。命名で十分に事足りるような、関心の明確な分離。
コードを「地図化」するために必要なコメントが多ければ多いほど、あなたの仕事はお粗末だということだ。
- jarofgreen
> 通常、コメントは改行せずに1行に収める — コメントが役立つなら、開発者はスクロールして読むし、役立たなければ簡単にスクロールして読み飛ばせる。
反対だ。個人的には、それはコメントを読む上で大きな障壁のように聞こえる。限られた幅のカラムテキストは一般に読みやすいとされているので、コメントをもっと読みやすくすべきだ。特に、コードを開いているのはおそらく幅の限られたウィンドウだろうし、コードにはそれを期待している。
- lintfordpickle
この記事の全体的な論調には賛成できない。コメントが決して役に立たないとは言わない。確かに役に立つこともある。しかし、冗長なコメントが当たり前になると、人々(そして今では特にLLM)がそれを使いすぎて、コードが不必要に難解で読みにくくなる。そしてメンテナンスについての指摘はもっともだ。
記事自体にも「無意味な」記述がいくつかある:
> 「状況に応じて、インラインコメントと独立したコメントを組み合わせて使う」
それはつまり、あらゆる種類のコメントのことではないか?
- jdw64
いいね。自分がいくつの迷宮を作ったか数え切れない。どうぞ私をラビリンスの建築家と呼んでくれ。