生産性は本当に上がっているのか?

いまさらインテリセンスの有用性は否定しないが、そもそもC++の時代はインテリセンスなどほとんど必要性を感じなかった。ヘッダには関数宣言が並んでいたし、ヘッダを同時に開け、そこからコピペしてくればそれで良かったからである。


それがJavaC#の時代に突入して、インラインで関数本体を書くようになり、かつ、長い名前の関数名をつけるようになり、さらに悪いことにコメントを関数の前にだらだらと書くようになった。<summary> とかこんなしょーもないタグはいらんねん!おまけに、VisualStudioでは上のほうにほとんど使わないボタンの羅列、下のほうにはビルドするときに出てくるウィンドウ等が並んでいる。肝心のプログラムを書くための縦幅が狭すぎる。


C#のソースを見ると、コメントやら関数宣言やら空行やら関数呼び出しごとのtry〜catchやら { } やらで正味1画面に5,6行しかプログラムらしいプログラムが書かれていないことがある。いつからプログラムはこんなに中身の伴わないものになってしまったのだろう?まったく読みにくいったらありゃしない。


5,6行しか1画面に意味のある行が出ていないのなら、20年前にスクリーンエディタでプログラミングしていたころのほうがよっぽどマシだったと言える。C#の言語仕様が悪いのか、そういうコメントの記法で書かせようとするNDocが悪いのか、コメント部を半透明でTipsのようにして表示するような機能がIDEに無いのが悪いのか、ただでさえ狭い縦幅をさらに圧迫してくるIDEの画面デザインが悪いのか、基本的な関数ですらエラーを例外で投げてくる.NET frameworkの設計思想がおかしいのか、それとも解像度の低いノーパソで開発するのがいけないのか。