プログラムってやればやるほど難しいですよね。

最近はプログラムソースコードと睨み合いをしているのですが
自分が書いたもの以外を読み解くというのは、いかに至難なることかを実感します。
オライリーの本(「C++実践プログラミング」(これは名著!))とかを読んでると(もちろん日本語)、
ソースコードの書き方みたいな章が必ずあって
きっちりと「プログラムはこう書くんだぜ!」というように示されているんですよ。
プログラミングに関しては、洋書はガッチリとフォローしていていいなぁ。
日本語のプログラミング入門書はアタマデッカチでイカンなぁと思うのですよ。

そもそも、プログラムは難しいと思われているのはなぜか。
それは、コードを書ける人しか理解できないコードを書くから。
もしくは、言葉がなく、「コードがただの意味のわからない記号列の塊」にすぎないからだと思う。
具体的にいうと、「どんなデータに対してどんな処理を行う」のかが
明記されていないとまず「ナニコレ?」となると思う。
(もちろん、才能のある人はボクにとって意味不明のコードをすぐに理解できると思いますが)

つまり問題なこととはアタマデッカチのコードはコメントがスゲェ少ないということ。
多分、誰もがわかるコードっていうのは、
コメントが10行に2・3行ぐらいにはついといて欲しいものだと思います。
日本人が書くなら出来れば日本語で端的に余計なことばも容認の方向でお願いしたい。
「コードを100回見るよりもコメントを1回見たほうが絶対理解できる。」
これは確実でしょう。
説明書を読まなくて操作できるモノはそんなにありませんよね?
自分で書いたものも、「後日見直すと何を書いてあるか理解できない」
なんて人にはコメントを1行ごとに書くことをぜひ奨めたい。
もちろんプログラミングが苦手って言う人にも。

さらに、3行ぐらいに処理を分けると判りやすいのに"綺麗に見える"とか
言い放って1行にまとめてしまう人いませんか?これも相当厄介。
実力のあるプログラマーに陥りやすい罠ですね。
現代のプログラミングは分業制になりつつあります・・・GNUプロジェクトがいい例ですよね?
プログラミングの天才が1人より、平凡な100人のプログラマの方がありがたい気がする。
もちろん100人が意思疎通の出来るチームでなければなりませんが。
意思疎通つまり理解には言葉は不可欠。
つまり、コードにはコメントは必須なわけです。

C++実践プログラミング

C++実践プログラミング