Unicodeとかキャラクタセットについてのわかりやすい説明

Joel on Softwareという本を読んでいます。
その中に「すべてのソフトウェア開発者が絶対に知っていなければならないUnicodeとキャラクタセットに関する最低限のこと(言い訳なし!)」という章があるのだけれど、この説明が簡潔でとてもよいです。たった10ページちょっとなので買うのはちょっとなあ、という人でも立ち読みできてしまうでしょう。
以前、Linuxを使い始めたばかりの頃にEUCとかUTF-8とかよくわからなくて頭ごちゃごちゃになってきたのでまとめたことがあります
日本語の扱いに関して、文字コードとかエンコード方式とか - libnitsuji.so
が、まあ、だいたいこんなことがもっと正確に、もっとたくさん書いてあります。
著者のJoelさんはマイクロソフトで働いていたこともあるらしく、説明にWindows APIのstrcatとかstrlenとか、そのUnicode版であるwcscatとかwcslenだとか出てきたので、以前Windowsプログラミングをしていた身としてはとても親しみを持てたし、思い返してみると最初の頃はよくわからなかったなあ、と懐かしく思いました。だって、文字の長さを知るための関数だけで、

  • strlen
  • wcslen
  • tcslen
  • lstrlen
  • CString::GetLength

とか、いっぱいあるんだよ!!
初心者にこれらの違いがわかるわけない。でもこれらの違いとか関係とかがすべてわかったときにはだいぶうれしかったしプログラミングが楽になった記憶がある。っていうかね、そのあとまたUnicodeに関して(少しではあるにせよ)苦しんだのはこれのせいでもあるのだけれど、このへんのことを語りだすとだ−いぶ長文になってしまうのでもう書きませんが。
というわけで、おすすめなのです。きっとスッキリしますよ。

Joel on Software

Joel on Software

    • -

Joel on SoftwareはWeb上でも読めて、以前何回かとりあげました。
ユーザーインターフェースデザイン - libnitsuji.so
選択 - libnitsuji.so
これらは今読んでる本じゃなくて、User Interface Design for Programmersのほうかな。
全部読もうと思ってたんだけれどまだ読んでない・・・。