2005年02月10日

プログラムは言語であるということ。

ここ半年ほど、wikiとかxoopsとかGNUとして公開されているソフトウェアをみていて思ったこと。プログラムは言語であるということ。
 今、おいらが日常的に使っている言語は日本語です。この何気なく使っている日本語も、論理的にわかりやすく物事を説明したり、意図を伝えるためには、一定の法則に基づいて書いたほうが効果的です。ただし、日常使う言語は人間という恐ろしく柔軟性に富んだ思考能力と推理能力を備えたものが対象ですから、コンピュータという堅物相手ほど細かい文法や構成に注意しなくても会話が成り立つんですよね。  とはいっても、なにを言いたいのかまるっきり分からない文章というのは存在するわけでして、悪徳商法マニアックスの会議室などを見ていくと、質問などに結構見つけることができるですよ。 で、実際にどのような文章がわかりにくいのか。思いついた特徴を上げてみるですよ。

自分の状態の説明が初めにない
改行、段落分けがない。
自分勝手な略号を使う
説明ではなく、自分の感情だけを書いてる
そこのルールとは異なるスタイルを主張する。
思いこみで話す

これをプログラムに置き換えると下記のようになると思うのです。

変数の定義がない(わかりにくい名前を使う)。
一つの関数が長い。
自分勝手な(他の人にわかりにくい)変数名を使う。
目的のこと以外の制御を書いている。
別言語の流儀を、強引に押し通す
特定環境でしか、通用しない形式で書く。

プログラムも日本語も言語の一つ。 上手な人が書くプログラムは、うまい人が書く日本語同様やはり読みやすい。読みやすいというのを他の言葉で言い換えると、言いたいことがしっかり伝わるということ。 つまり、わかりやすい日本語をかけるようになることが、わかりやすいプログラムを書くための近道ではないのでしょうか。  振り返ってこの日記。 来た人に読んでもらいたいならば、ただ思いついたままに言葉をならべてスパゲッティープログラムをつくるのではなく、文章の構造化を意識してシンプルに伝わるように書きましょう>おいら(汗
posted by たぬべえ at 00:00| Comment(0) | 日常
タグクラウド