サイト公開に向けて

ふ〜、やっと公開できそう。と言うか、無駄に(X)HTMLの構想にこだわりすぎて、本来もっと早く公開できたものを、どんどん先延ばしにしていた。うーん、作業効率が悪いのは相変わらず。速読とかできても、タイピングが速くても、こういう要領の悪さは補えない。

何にそんなにこだわっているかと言うと:

  • (X)HTMLの構文の妥当性とか
  • レイアウト
  • どのブラウザでもおんなじように閲覧できたらいいな
  • XMLとしての汎用性を考えるとここはこうした方が…いややっぱり…
  • ゲームのしすぎでレポートが提出できません

うーん、ダメダメだ。

なでしこの速度

下の2つのなでしこのプログラムでは、実行速度に天と地ほどの差が出る。

1つめ
ARRとは配列。開始時間とは整数
開始時間はシステム時間
10万回、ARRに回数を配列追加
10万回、ARRの0を配列削除
システム時間-開始時間を表示
 
2つめ
ARRとは配列。開始時間とは整数
開始時間はシステム時間
10万回、ARRに回数を配列追加
10万回、ARRの(ARRの要素数-1)を配列削除
システム時間-開始時間を表示
 

使っている「命令」の数は1番の方が少ないので、何となく1番の方が早くなりそうだ、などと思ってはいけない。地どころか地獄並みの遅さになるのは他ならぬ1番のプログラムだ。

なでしこの仕様を知らなくても、プログラマーと自称する人にはこの現象の理由ぐらい説明できてほしいが、実際はそうでもないだろうと思う。いや、主観的憶測にすぎないけれど。要するに、なでしこのdisadvantageとしてしばしば挙げられる速度やメモリに関する問題を理解せずに、大容量の配列なんかを扱うのはすごく危ない、という話がしたかった。

# あと、こういう話ってどこにすればいいんだろう?wiki?Tips?それともやっぱりdiaroid?これからも迷ったら全部diaroidに分類してそうな自分。