JDBな人生  専門的なことから日常的なことまで~ まぁ自由きままに書いていきます。
2013年02月 / 01月<< 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 >>03月

アクセスランキング

[ジャンルランキング]
コンピュータ
364位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
46位
アクセスランキングを見る>>

ロールオーバー処理の読み込み遅延

久々にWEB系の記事です。

最近、某カメラメーカー、P社のサイトを見たのですが、画像に設定されたリンクをクリックしようとマウスポインタを載せると画像が消えました。原因は、その画像(リンク)にロールオーバー処理が施されていることだということはすぐにわかりましたが、ユーザー体験の面ではあまり良いものとは言えませんね。

というわけで、「ロールオーバー時に画像が消える」という現象の解決策についての記事を書くことにしました。

どのような条件でこの現象が起こるのかということですが、「画像のキャッシュがあるかないか」がポイントです。あらかじめ画像を読み込んでおけば、画像が消えることはないようです。

その場合、どのタイミングで画像を読み込むか、ということが重要となります。

続きは以下からどうぞ。
スポンサーサイト
   CSS    TB(0)    CM(0)    EDIT    ページ↑

ゼロ除算?

少し前に、メディアで「小学校教員が生徒に9 / 0 = 0と教えている?」みたいなことが話題になりました。
実際は間違いではありますが、いずれ学びなおすのであれば、そのような教え方もありといえばありなんじゃないかなあとも思います。

まあそれが適切か不適切かはおいておいて、先日ふと、0除算はプログラミングではどう扱われるのか?という疑問を抱きました。過去の経験では、C++は0除算で止まる、JavaScriptは止まらない、ということがわかっていましたが、今回、自分の主に使う言語について挙動をまとめてみました。

赤字は例外の発生&中断、青字は出力結果の値です。

Perl
my $a = 5;
my $b = 0;
print $a / $b;

Illegal division by zero

JavaScript
var a = 5;
var b = 0;
alert(a / b);

Infinity

ActionScript 3
var a:int = 5;
var b:int = 0;

trace(a / b);

Infinity

VB.NET
Dim a As Integer = 5
Dim b As Integer = 0

Console.WriteLine(a / b)

+∞

Visual C++
int a = 5;
int b = 0;
printf("%d",a / b);

Integer division by zero

Visual C#
int a = 5;
int b = 0;
Console.WriteLine(a / b);

System.DivideByZeroException
0 で除算しようとしました。

Java
int a = 5;
int b = 0;
System.out.println(a / b);

Exception in thread "main" java.lang.ArithmeticException: / by zero


結果、JavaScriptとActionScriptとVB.NETは処理が継続しましたが、他の言語は例外発生&中断ということがわかりました。
まあ、ゼロ除算が起こるようなコードは書くものではないと思いますが…

「不良の原因がゼロ除算だった」なんてかっこ悪いことの起こらないよう、頭の片隅に置いておくと良いかもしれません。
   プログラミング/開発全般    TB(0)    CM(0)    EDIT    ページ↑

タワーディフェンス系ゲームの制作

久しぶりの更新です。

ゲーム制作の予告を書くのも何年振りでしょうか…
まあそんなことは置いといて。

今回、タワーディフェンス系のゲームを制作することにしました。
タイトル等はまだ細かくは決まっていませんが、「国」「村」を中心にストーリーが展開していくものとなっています。

完成は3月下旬までを目標としています。
数年前まで作っていたゲームと比べて、自分も相方も技術は向上している…はずですが、完成度が上がるかどうかはまた別の問題でしょうか。

公開はGCC(http://g-c-c.info/)にて行う予定です。

乞うご期待!
   雑談    TB(0)    CM(0)    EDIT    ページ↑

プロフィール

JDB Luigi

Author:JDB Luigi
どこにでもいるようなありふれた人間・・・という訳でもなく、かと言って怪しい宗教を信仰する変人という訳でも無い。

基本的に掲載しているコード等は煮ていただいても焼いていただいても結構ですが、利用は自己責任にてお願いいします。
また、バグ・アドバイス等もしあればよろしくお願いします。

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。