2008年01月03日 23:00 [Edit]

今はとりあえずこれを推す - 書評 - Java開発者のためのAjax実践開発入門

技術評論社書籍編集部池本様より「逆算式SQL教科書」と一緒に献本いただいたのがこちら。

実にいいタイミングなのでここで書評。

F's Garage:はじめてWebプログラミングをするなら PHP? Ruby?
やっぱり、PHP・・・・かな

「はじめてのWebプログラミング」でしょ?

それならもう答えははっきりしている。PerlでもRubyでもPythonでもましてやPHPでもない。

JavaScript、だ。


本書「Java開発者のためのAjax実践開発入門」は、「Java開発者のための」とあるが、別にJava開発者でなくても、現代的なJavaScriptを学びたい人であれば誰にとっても有用な一冊だ。さすがにPart4は「Java専科」の匂いが強いが、それ以外はどのJavaScriptersにも役に立つ。

目次 - 書籍案内:Java開発者のためのAjax実践開発入門|gihyo.jp … 技術評論社より
Part1 イントロダクション
第1章 Ajaxとは何か? - Java開発者のために
Part2 JavaScript
第2章 JavaプログラマのためのJavaScript入門 - 徹底攻略
第3章 Document Object Model(DOM)- 仕組みがわかれば簡単
第4章 XMLHttpRequet - 舞台裏を根本から理解
Part3 Ajaxライブラリ
第5章 prototype.js - 定番ライブラリのマスター
第6章 Dojo Toolkit - さらに深く実践
PART4 サーバサイドフレームワーク
第7章 DWR(Direct Web Remoting)- フレームワークとの連携
第8章 Ajax4jsf - 表現力豊かなWebへ
第9章 jMaki - ライブラリのラッピング
Part4 開発環境
第10章 プログラミング環境の整備 - Eclipseの活用
第11章 テスト - ツールの活用と実践
第12章 デバッグ - Firebugの使いこなし方

本書のすばらしいのは、「自分で書く」と「人の作ったものを使う」のバランスのよさ。

Webプログラミングにおいて、JavaScriptが最重要の言語であるというのは、もはやこの2年で確定した感がある。Webプログラミングというのはサーバーサイドとクライアントサイドの双方があるのだが、サーバーサイドの方は多すぎるほど選択肢があるのに対し、クライアントサイドの方はJavaScriptの寡占状態。どのサーバーサイド言語を選択しようが、JavaScriptなしでWebプログラミングはもはや語れないのだ。

しかし、そのJavaScriptをとりまく環境は、未だ混沌としている。どのライブラリーが標準になるかは未だ不明で、CPANのように「ここを見ればJavaScriptの状況が一目でわかる」というサイトもない。一点集中は危険すぎるのだ。その意味で、本書の「Ajaxポートフォリオ戦略」はとてもよい。ライブラリーの紹介にとどまらず、Part 2で「素手でやるとどんな感じになるかを」きちんと紹介しているのも素晴らしい。

それでは、本書が「はじめてのWebプログラミング」向きかというと、タイトルを見てのとおり初心者が「理解する」には少し難しい。しかし、本書を「使う」のは初心者でも可能であり、そして本書のコーディングスタイルは初心者のうちに真似ておきたい、奇麗かつ現代的なものだ。

とはいえ、「プログラミング初心者のためのJavaScript入門」というのは、未だ決定打はない。なので「アマグラマーのすすめ」を書き始めた。暫く更新が止まっているが、正月休みが明けた頃に再開予定である。今暫くお待ちを。

JavaScriptは、確かに癖の多い言語ではある。が、初心者向けではないかというとそうも言い切れない。特にclosureを多用するスタイルは、「schemeの代わり」にも結構なるし、DOM操作を通してオブジェクト指向も結構身につく。なんといっても素晴らしいのは、何もインストールしなくても、ブラウザーさえあれば学べること。サーバーサイド言語は、この点においてずいぶんと敷居が高い。"Hello, world!"一つ見せるのだって、結局のところサーバーの設定をきちんとしなければならないのだから。

本書の賞味期限は、おそらく2008年前半。長く見ても今年一杯かもしれない。しかし本書から学べることは、それを加味しても充分以上ある。早めにお召し上がりを。

Dan the JavaScripter


この記事へのトラックバックURL

この記事へのトラックバック
PHPというものを触ってみる需要がようやく正月に発生した。ちょうど任意ドメインのAlexaランキングを自動取得するという課題が練習によさげだったので書いてみた。サーバーで動作確認してGoogle Page Creatorにあげてみたけど動かない。PHPなどのサーバーサイドスクリプトや
[php][SNS]SNSに関係ありそうなサイトのトラフィック【satzz online 2.0】at 2008年01月04日 18:23
この記事へのコメント
s/寡占/独占/

英語ではそれぞれ oligopoly, monopoly.
Posted by Kei at 2008年01月05日 11:51
JavaScriptはデバッグ環境に問題があるのではないでしょうか。
Firefoxはまだましなエラーメッセージを吐きますが、IE単独では手も足も出ません。
「アマグラマーのすすめ」では一度この点に触れておいてもらいたいと思います。
簡易コンソール(http://blog.livedoor.jp/dankogai/archives/50940883.html)でも「[object Error]」とか言ってきます。

ちなみに私はアマグラマーですが、基本的にはFirefoxのエラーコンソールだけ(Firebugを使っていません)。IE向けに書く必要がある場合はMicrosoft Script Editor(http://labs.gmo.jp/blog/ku/2007/03/iejavascript.html)を使います。
Posted by worris at 2008年01月05日 00:40
そして本書のコーディングスタイルは初心者のうちに真似ておきたい、奇麗かつ現代的なものだ
Posted by Lin at 2008年01月04日 06:16