<< コーヒーメーカーv | main | ドライブDAY >>

プログラムって難しい

2005.06.23 Thursday
一般に「プログラミング」と聞くと、所謂C言語だとかJAVAだとか、いま俺が卒研で使ってるMATLABなんかをイメージする人が多いわけで、要するにしっかりとした専用のソフトを使って、本とにらめっこしながらカタカタ作り上げるようなもんなんだと思ってる人が多い。

ただ、所謂狭義の「プログラム言語」の場合だとあながち間違いではないけど、広義のそれになると話はまた別である。いま、この記事を読んでいる貴方でさえも、プログラム言語に触れているわけだ。

なにが言いたいかというと、ようはHTMLやJavaScript、CSSだって広い意味ではプログラム言語なんだよ、ってことだ。

まぁ、HTMLなんかは正確には「マークアップ言語」と言うやつで、厳密にはプログラム言語ではない。が、コンピュータを専門的に勉強したりする情報系・理工系の学生やその筋の所謂SEと呼ばれる人達以外の一般の人にとっては、プログラム言語もマークアップ言語も同じようなもので、だからHTMLやJavaScriptだってそれなりに難しいんだということが言いたいわけだ。前振りが長いな、俺。
そもそも何でこんな記事を書き出したかというと、このブログを使うはじめるに当たって、HTMLやCSSの書き換えをいろいろやっているわけだ。

ロリポブログには、ブログの外観や構造をあらかじめ用意しておいてくれている「テンプレート」と言うものが数多く用意されていて、ユーザーはその中から気に入ったデザインをダウンロードして利用することができる。テンプレートを編集するのはユーザーの自由だし、もちろんイチからHTMLとCSSを書いて形作ったっていい。ただ、俺はそこまでHTMLに精通しているわけではないし、ましてやCSSなんてほとんど扱ったこともなかったから、テンプレートをダウンロードして、そこから自分なりにアレンジしていく形で使っている。

そして、こないだからJavaScriptでプログラムを組み始めた。

そのプログラムは、俺の大好きなF1グランプリのカウントダウンをするプログラムで、次のグランプリ(今なら再来週のフランスGP)まであと"何日と何時間何分何秒"ですよー、というのを教えてくれるやつだ。"あと何日"だけ表示するやつは、昔作ったやつがあって、それは本店のトップページに今でも残っている。

ところが、日単位でカウントするプログラムと秒単位でカウントするそれとでは、当然"関数"の読み込み頻度に大きな差ができるわけで、昔のをそのまま応用するわけにも行かない。所謂「再起関数」という考え方が必要なのが。

再起関数というのは、あるプログラムを実行して、処理が一通り終った段階で「自分で自分を呼び出して」、頭から処理を始めるやり方だ。こうすることで恒常的にプログラムを実行することができ、秒単位でのカウントも実現することができる。

新しい考え方を導入してプログラミングをすると、どうしてもバグが発生する。プログラミングの作業で最も手間がかかるのが、このデバッグという作業だ。つまり、うまく動作しない場合に、いったいどこがいけないのか、どうすればうまく動くのか、を検証して解決していく作業だ。どんなプログラムでも、よほどのことがない限り一発で正常動作することはないので、プログラミングとデバッグは切っても切り離せない関係にある。

今、俺はそのデバッグ作業の真っ最中だ。ようやくしっかり動くようになったJavaScriptをHTMLに埋め込もうと思ったのだが、それがどうもうまく行かなくて、質問BBSなんかを使ったりして検証している。今日から実家に帰ってきてしまったので、ちゃんと動かせるようになるのはちょっと先の話になってしまいそうだ。

家でもデバッグ、大学でもデバッグ。好きなことをやりたいようにやるというのは、なかなか苦労が絶えないことである。
| at 23:20 | PermaLink | blog | comments(0) | trackbacks(0) |
コメント
コメントする









この記事のトラックバックURL
トラックバック
supporting
stella cadente.netは、

ジェフユナイテッド市原・千葉
千葉ロッテマリーンズ
つくばFC


を応援します。

ばぐー

故郷・地元スキー。
categories
entries
archives
search
Feed