あなたがプログラムを理解できない10の理由:第5回

たにぐちまこと(H2O Space.)
2008/06/03 08:00

プログラムの学習には、曖昧な動機、上がらないモチベーション、多数のエラーなど、様々な障壁が存在する。しかしそれでも、ものを作ることは楽しいではないか。最後のメッセージは「楽しもう」だ。

根本を理解しようとしない

 スクリプトの作成にあたって最も大切なことは「根本を理解する」ことである。

 一見すると、連載第1回で紹介した「細かいことにこだわりすぎる」と矛盾しているように見えるが、それはスクリプト学習の初期段階に限った話。ある程度まで進んできたら、今度は理解できない部分をとことん考えたり、調べてみると良い。

 例えば前に紹介した「foo」「bar」や「Hello World」の例は、私も勉強を始めた頃にずっと混乱していたことだ。「fooという変数名にしなければならないのではないか……」などと思いこんだりもした。しかし、その後ある書籍でこの由来が書かれていて、すっきりとしたものである。

 今では、Wikipediaという心強い味方もいるため、キーワードを打ち込んでみればたいていの言葉の由来や意味は分かるだろう。

 また、筆者は「関数」と「引数」という言葉に非常に違和感を持っていて、関数とはいったいなんなのか、どういうものなのかといったことが全く理解できないまま、「何となく」使っていた。

 しかしある時、ふと「function」という単語を英和辞典で調べてみたところ、次のような意味が書かれていて、目から鱗が落ちた。

1. 機能{きのう}、作用{さよう}、働き、効用{こうよう} ・We will learn the structure and function of the skeletal and muscular system. : 骨格と筋肉組織の構造と機能を学びます。 ・The recent computers have too many new functions. : 最近のコンピュータには新機能があまりにも多過ぎる。 2. 《数学》関数

 (英二郎より)

 数学では確かに「function」を「関数」と訳すようだが、それよりも一般的な訳として「機能」や「働き」がある。これならば非常に分かりやすい。

 つまり、ファンクションというのはコンピュータの「ファイル操作機能」や「画面制御機能」などのさまざまな「機能」を使うために呼び出すものなのだ。新しいファンクションを定義することは、新しい機能を加えてパワーアップさせることなのである。

 「関数」では頭になにも具体的なことが思い浮かばなかったものが、「機能」と訳し直しただけで一気に具体的なイメージとなり、理解することができた。

記事の感想やご意見をコメントでお寄せください(CNET_IDログインが必要です)
ログイン パスワードを忘れた方  |  新規登録
RIAやAjaxによりインターフェイスデザインの幅が広がりました。「正しいデザイン」へのアプローチを、テクノロジーとメソドロジー両方の切り口で、具体的にご紹介するリアルイベントです。
  • 3日前のトップ記事
  • 4日前
  • 5日前
  • 6日前
  • 7日前
  • 新着記事
  • 人気記事
  • 特集
  • ブログ