« リキッドレイアウトサイト事例集 | トップページ | niftycube.js - 角丸効果 JavaScript ライブラリ »

2006-05-07

邦人による Ajax 関連書

今日はかねてからずっと勉強しようと思っていた、Ajax 関係の積んどく本の中から。まだ斜め読みの段階なので、ひょっとしたら後で意見が変化するかもしれません。ま、第一印象ってことで。(^ ^;)

Ajax を始める前に?!

489362234x09lzzzzzzz

ざっと目を通した限りでの印象ですが、「 Ajax に入る前に」的な性格が強いですね。JavaScript、MySQL、PHP の解説に紙幅の半数以上を費やしていて、137ページ目にようやく "XMLHttpRequest" が登場します。しかも Ajax を語る上で欠かすことのできない、XML の概説はわずかに 7ページ。DOM の話もなく、Ajax の「入門書」としては少々疑問符のつく内容だというのが率直な感想です。(もちろん、リレーショナルデータベースを使うのが悪いといってる訳ではありません。Ajax —"Asynchronous Javascript And Xml" の "XML" に相当する部分の解説があまりに貧弱なのが「入門書」として気になるだけなんですけどね。)

随所で不備が...

ついでにいえば、本書で JavaScript を何のことわりもなく、いきなり「オブジェクト指向言語」であると断言している点も、本書が「入門書」を謳っていることを考えれば思わず渋い顔に..。

いわゆる「オブジェクト指向言語」は、オブジェクトを定義する際にクラスとインスタンスという概念を用いる C++ や Java、Ruby などのクラスベースオブジェクト指向言語を指すことが多く、JavaScript のようなプロトタイプベースオブジェクト指向言語まで含めないことが往々あって、この点で初心者に大きな誤解を与える可能性があります。たとえばクラス単位でのプログラムの再利用性という、しばしば説かれる「オブジェクト指向言語」の利点が、JavaScript のようなプロトタイプベースではなく、Java などのクラスベースオブジェクト指向言語の利点を指していることは明白でしょう。

「オブジェクト指向言語」という言葉を持ち出すのであれば、ほかにも Java や C++ などと異なる点として、コンパイルを必要としないスクリプト言語である点、プラットホームやアプリケーションによって実装や規格が異なるクライアントサイド スクリプト言語である点などにも言及すべきでしょうね。

特にプラットホームやブラウザに依存しない JavaScript を記述するのは玄人でも至難であるのにも関わらず、Ajax 対応のクロスプラットホームなオープンソース JavaScript フレームワーク: prototype.js非公式日本語解説] に言及しているのが 201-204 ページの間のみで、それ以前に本書で紹介されているコードが基本的に「 Firefox でしか動作しな」いというのは、遺憾としか言いようがありません。

入門 Ajax

Google Maps API 周辺

なお、たにぐち氏の入門書は、最後の方に具体的なサンプルプログラムとして付箋紙アプリケーションと Google Maps の操作を解説していますが、Google Maps API を通して Ajax を習得する場合は、高橋登史朗氏の次の本の方がはるかに良くできています。(入門書としては内容が若干 偏っているような気もしますが..。)

ただ、Google Maps API もしくは、それと同種の Ajax 地図アプリケーションについては、すでにこの分野に限定した専著が海外で何冊か出ているので、本格的な地図アプリケーションを開発する場合には参照しておいた方が良いでしょう。

XML の操作を意識した Ajax の入門書

余力があればレビューしますが、Ajax の入門書としては、たにぐち氏の入門書よりも、むしろ次の一冊をおすすめしたいところです。

Ajax —実装のための基礎テクニック

本書は DOM を使ったノードの操作や、筆者の一人である川崎有亮氏が開発したライブラリ: JKL.ParseXML を利用した XML のパーシングなどにも言及されていますが、prototype.js に関しては部分的な言及が 127ページ以降にあるだけで、ちゃんと踏まえられているわけではありません。ただ、クロスブラウザにはある程度 配慮されているので、文字通り Ajax を基本から修めるのには、邦書の中では現時点で最良の入門書かもしれません。

prototype.js を前提にした古籏氏の逆引きリファレンス

prototype.js を本格的に踏まえているかどうかで、記述する JavaScript ソースの量と手間が大幅に変わるので、一度、prototype.js を利用すると、クロスブラウザに対応した Ajax コードをいちいち自分でコーディングするなんて考えられなくなります。

この意味で本格的に prototype.js を踏まえて書かれている次の一冊は、サンプルコードが豊富なこととも相俟って非常にありがたい工具書です。

Ajax逆引きクイックリファレンス

prototype.js は Ruby on Rails[→ 日本語解説 Wiki] という、Ruby ベースの Web アプリケーション開発フレームワークにも標準で組み込まれているように、すでに Ajax を扱う上で欠かせない存在になりつつあるので、もはや存在を前提としてしまってもいいのではないかとすら僕には思えます。

|

« リキッドレイアウトサイト事例集 | トップページ | niftycube.js - 角丸効果 JavaScript ライブラリ »

[Web]Ajax・DHTML」カテゴリの記事

[Web]JavaScripts」カテゴリの記事

[Web]検索エンジン・DB」カテゴリの記事

[書籍]Web」カテゴリの記事

コメント

Ajax関連書籍の著者はけっこうネット上にサイトを持っているので、そちらを見てから買うというのも手ですね。

私は紹介にある「入門 Ajax」で勉強しました。
これが日本初のものなので、一度読んでおきたいものです。

これからもレビューとかAjax実装例とか書いていってください。
私はAjax(+PHP)でブログを自作している高校生ですが、応援しています。
では、また。

投稿: サトシ | 2006-05-09 00:04

サトシさん、はじめまして。コメント、ありがとうございます。

あわてて書いたというより、Ajax(特に XML 部分や非同期通信部分)が取ってつけたような形になっているのが気になるんですよね。(^ ^;)

ここで挙げてないもので、個人的に気になっている本が実は一冊ありまして、羽田野太巳氏の『AJAX Webアプリケーション アイデアブック』なんですけど、また時間が空いた時にでも手に取ってみようかと思ってます。

田舎だとなかなか現物を手に取って見る機会が少ないですよね(僕の場合は、田舎の古書店の方が、都会の古書店よりも逆に掘り出し物に遭遇する頻度が高いところにトキメいたりしますけど)。いい加減なレビューでちょっと後ろめたい気もしますが、少しでも参考になれば幸いです。

投稿: ゆう | 2006-05-08 05:10

はじめまして。サトシと申します。
うちは田舎なのでこの本は見たことがありませんが、あまりよくなさそうですね。
確かにPHPなどと比べるとJavaScriptもオブジェクトな香りが漂いますが、おっしゃるとおり、「オブジェクト指向言語」というのはどうかと思います。
まあ、まだAjaxは発掘されてまもないですから、本を書いた人も実はあわてて勉強して書いた、とかかもしれませんね。
これからどんな本が出てくるのか、楽しみです。

投稿: サトシ | 2006-05-08 00:00

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/15394/1709509

この記事へのトラックバック一覧です: 邦人による Ajax 関連書:

« リキッドレイアウトサイト事例集 | トップページ | niftycube.js - 角丸効果 JavaScript ライブラリ »