2007.7.21 13:00-
[ブラウザでのJavaScriptの世界へのおさそい]
・リッチクライアントがはやってて、その辺りの技術の現状について
・JavaScriptとは
・Netscape Navigator 2.0で実装 JS1.0
・基本的にはオブジェクト指向、プロトタイプベースのオブジェクト指向
・最近ではApollo等のデスクトップウィジェットとかも
・不遇の歴史、DHTML、ブラウザのバグ・セキュリティホールなどの問題
・AJAX的なサーバとの通信による動的データ更新自体は昔からできたけど、クライアント側のパフォーマンスがよくなく、サーバとの通信も遅くリアルタイム性に欠けていた
・当初は使えないものと認識されていた
・ここ最近の環境改善にともないGoogleとかがやりまくり、光が差し込んできた
・XMLHttpRequestの標準化とAJAX、IE5でActiveXのオブジェクトとして実装
・Mozilla 1.0で互換性のあるJavaScriptオブジェクトとして提供される
・2005年にJesse James GarrettがAJAXとか使ってみた
・2006年にW3CによるDraftが公表
・IE7でネイティブでXMLHttpRequestが実装
・AJAXをWeb Appで利用するには
・大昔は、自力でXMLHttpRequestオブジェクトを作成、ブラウザ互換最悪、バグ満載、、、
・AJAXの先駆け、Gmail、Amazon A9等のサイトの登場、簡単に利用できるライブラリが登場する
・現在・未来、JSON/JSOAPによるXMLよりコストの低いデータ転送、現在のXML→DOMは無駄が多い、E4XでのJavaScriptでのネイティブXMLサポート
・依存関係を考えると、いくつかのライブラリグループに分割可能
・prototype.js(MITライセンス)
・jQuery
・YUI(Yahoo UI Library)
・Google API
・これ以外にも非同期通信に特化したライブラリは多数
・まずはコピペから始めよう
・ライブラリ利用の留意点
・基本的にライブラリを混ぜちゃダメ、クラスなどがバッティングしてしまうこともある、YUIは比較的安全、jsのみならず、CSSのclass名も注意! デザイナの定義するCSSの名前とか、危ないよねぇ、っていうか問題解決が困難、気づきにくい
・HTMLもしくはXHTMLで、最低限Validatorに合格するように、当然だよね枠の区別がつかなくなっちゃうから、IEは互換モードと標準準拠モードで動作が異なる、DOMツリーの生成云々
・簡単にリッチクライアントを実現するためのライブラリ
・タイムラインのドラッグドロップ、ダウンロードしてすぐ使えるんだって
・入力フォームのバリデータ、便利だ、イントラとかならこれで十分
・画像虫眼鏡?細かい画像を大きく見れる、おもろいなぁ
・画像エフェクト、画像を傾けたり、クライアント側に作業をさせるからPCへの負荷も結構なものだよ
・でもって、当然このプレゼンもHTML + JavaScript、S5というシステム、プレゼンテーションソフト、うひょー使ってみてー、でもHTMLを書くのかー。うわ、ul,liでつらつらと書くだけ、すげーすげー、すげーーー、エフェクトは全部ライブラリが担当、すげーーーーー!
・Firefoxでのデバッグ
・Firebug拡張機能、Firefoxのadd-onsサイトで拾ってこれる
・JavaScript、HTML、CSSのデバッグが行われる
・おー、マウスをエレメントに乗っけるだけで、かかっているCSSが表示される、すげー、デザイナーのデバッグにもむいてるなぁ。Firefoxってのが引っかかりますが、、、
・IE7ではアドオンで開発エクステンションがあるかも