久しぶりに、自分の中でヒットした本があったのでご紹介します。結構有名だと思いますが・・・
[tmkm-amazon]477414164X[/tmkm-amazon]
ユーザビリティ、セキュリティなどの面で、プログラマには文字コードの知識が必須です。
しかし、最近は高級言語が主流なこともあり、文字のバイト列を意識することすら少なくなっています。「文字化けしたから対応しよう」程度の意識しか無い人も多いのではないでしょうか?
この本では、完全にプログラマー向けで、文字コードの歴史や技術、問題点、解決案などが紹介されています。
社内のプログラマには読ませてみようと思います。
Java の charAt() と codePointAt() の違いが分からないようでは困りますので。
巻末のほうにある、「txtファイルに見せかけたexeファイルの作り方」は面白いですね。
UnicodeのRLO (RIGHT-TO-LEFT-OVERRIDE) を使うことで、txt.exeをexe.txtに見せかけるやりかたです。
ちなみに、この方法を使ったファイルをGmailで送信しようとしたところ、以下のようなエラーが出ました。
見事に崩れていて面白いです。