© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます prototype.js と Perl で Ajax 株式会社はてな 伊藤 直也

Slides:



Advertisements
Similar presentations
Rails 勉強会@大阪 -002 cuzic. 今日はなすこと 相対パスプラグイン Double Filter Plugin 埋め草 –Cuzic の環境とか –1 つのボタンで複数の Ajax なアクションを実 行.
Advertisements

Ajax フレームワークの比較 株式会社 フォアフロンティア たにあん. 説明の範囲 今回の技術発表会の説明範囲としては、 Ajax 開発におけるプ ログラム言語と連携するフレームワークについて比較し、特 に DWR について説明を行なうものとします。
Wiki と Web サービス API. Wiki と Web サービス API ( 1 )  Web サービス API の流行 Blog が投稿用の Web サービス API を提供 Amazon 、 Google 、 Yahoo などが各種情報 取得のための Web サービス API を提供.
JavaScript における DOM 操作 XML 読み込み Ajax( 動的 HTML 編集 ) 情報システム工学科ラシキアゼミ 3年 H 107072 田中直樹.
Integrated Personal Page C05823 森本万里子 C05829 西山礼恵 C05899 高木華子.
Copyright © Ariel Networks, Inc. AJAX 勉強会 アリエル・ネットワーク株式会社.
Nov Yosuke HASEGAWA #owaspjapan. OWASP Japan Local Chapter Meeting #8 #owaspjapan 自己紹介 はせがわようすけ  ネットエージェント株式会社  株式会社セキュアスカイ・テクノロジー 技術顧問  Microsoft.
Web アプリケーション開発 ~図書館管理システム~ 北海道情報大学 情報メディア学 部 情報メディア学科 新井山ゼミ 高橋 隼.
1 安全性の高いセッション管理方 式 の Servlet への導入 東京工業大学 理学部 千葉研究室所属 99-2270-6 松沼 正浩.
Cubby Web アプリケーションのためのシ ンプルなフレームワーク BABA Yasuyuki.
1 PHP プログラムの実行(まと め) 担当 岡村耕二 月曜日 2限 平成 22 年度 情報科学 III (理系コア科目・2年生) 本資料の一部は、堀良彰准教授、天野浩文准教授、菅沼明 准教授等による以前の講義資料をもとにしています。
© 2006 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます はてなの開発 / 運用体制 株式会社はてな 伊藤 直也.
1 なんとなく Ajax ~新しくて古い XMLHttp 川合孝典 (Kansai.pm) 2005/5/22.
RailsによるAjaxの利用 回生 小野 実.
IIS 4.0で開発をするコツ Webアプリケーション構築.
ZKプラグインで、Grailsの Viewをリッチに楽しく
JavaScript 演習1.
Ruby on Rails 勉強会 11月5日「土」 崔 昌権
CakePHPを業務に導入する Shin x blog 新原 雅司.
名古屋大学大学院人間情報学研究科 物質生命情報学専攻 情報処理論講座 原 崇
背景 我々の研究室で開発しているJavaプログラム解析フレ ームワークでは,解析情報はメモリ上に保持される 問題点
IE5でアプリケーション開発 東日本計算センター 小野 修司.
オペレーティングシステムⅡ 第5回 講師 松本 章代 VirtuaWin・・・仮想デスクトップソフト 2009/11/6.
Day3 Day4 Day3 Day4 Copyright (c) 2009 Fusic Co.,Ltd.
発熱のしくみ 太い電熱線に流れる電気の量の方が多い 1 (C)一般社団法人 日本電機工業会 本資料の無断での引用・転載・複製を禁じます.
Hot Pepper for iPod touch
卒研:データベースチーム 第4回 JSP、サーブレット
XSSで使えるかもしれないJavaScriptテクニック
JavaServlet&JSP入門 01K0018 中村太一.
Webコミュニケーショングループ ~PHPの基礎~ M1 宮崎 真.
Webサービスマッシュアップを利用したWebアプリケーションの開発
オペレーティングシステムⅡ 第3回 講師 松本 章代 VirtuaWin・・・仮想デスクトップソフト 2009/10/16.
佐賀大学 理工学部知能情報システム学科 講師 大月 美佳
Bottle/Pythonによる Webアプリ入門
卒研:データベースチーム 第4回 DOMを使った処理
平成19年11月8日 図書系職員のための アプリケーション開発講習会
Silverlight とは.
JavaScript Language Update
卒業研究 PHPによるGoogleMapAPI を利用した 喜田村緑郎日記システムの 試作 平成19年2月10日 情報システム解析学科
PHP Framework Update symfony 編 株式会社ディノ 月宮紀柳.
Ajaxフレームワーク 松嶋慎太郎.
JQueryでAjax 藤田@ジャストプレイヤー ※参考しまくり文献 jQuery日本語リファレンス.
Day3 Day4 Day3 Day4.
HTTPプロトコル J2EE I 第7回 /
Day3 Day4 Day3 Day4.
Day3 Day4 Day3 Day4.
XML読み込みとDOM操作で Ajaxに近づこう
PHPの基礎と開発手法 Based on PHP5
GoogleMapsを利用した コレクションシステムの試作
データベース設計 第9回 Webインタフェースの作成(1)
Javaによる Webアプリケーション入門 第5回
基礎プログラミング演習 第1回.
Web 2.0 時代の Ajax Binary Hacks
Naoya Ito Blog テクノロジーとWeb サービス Naoya Ito
第8章 Web技術とセキュリティ   岡本 好未.
介護支援システム SYLVIE 頼れる介護のセキュリティ 開発メンバー リーダー 岩本 和磨
9.1 DOMの概要 9.2 DOMプログラミングの基礎 9.3 DOMのプログラミング例
第4回JavaScriptゼミ セクション2-8 発表者 直江 宗紀.
ガジェット・マスターへの まわり道!? ~Ajaxを理解しよう~
第7回JavaScriptゼミ セクション4-5 発表者 直江 宗紀.
基礎プログラミング演習 第5回 関数とイベントを使ったプログラム.
制作技術ー3 双方向通信 : CGIシステムと環境変数
Webセキュリティ 情報工学専攻 1年 赤木里騎 P226~241.
HP作成 そろそろまとめ編 担当:TAの人.
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
基礎プログラミング演習 第3回.
地域生活支援システムの開発 越田研究室 j0431 野津洋二.
今の俺にシカクはねぇ!! 資格取得支援システム.
例題のプログラムを通して JavaScriptの仕組みを理解することとします。
Object Oriented Programming in Perl
Presentation transcript:

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます prototype.js と Perl で Ajax 株式会社はてな 伊藤 直也

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Ajax って ? Asynchronous JavaScript + XML 定義はあいまい JavaScript による動的ロードテクニック 読み方 えーじゃっくす あじゃっくす

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Ajax おさらい JavaScript XMLHttpRequest サーバーサイド アプリケーション XML API 非同期通信 HTML + CSS ブラウザ描写 (DHTML) クライアント側サーバー側 DOM

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Ajax でありがちなロジック Hello, World! XMLHttpRequest で GET + responseText を innerHTML で表示させる 裏で CUD XMLHttpRequest で POST 、 DB に CUD 画面遷移なしにデータを永続化

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Ajax 用ライブラリ ありがちな処理はライブラリで楽をしよう Survey of AJAX/JavaScript Libraries Prototype Rico Scriptaculous MochiKit SAJAX Dojo DWR

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Prototype prototype.js Sam Stephenson 動的アプリケーション用フレームワーク Ajax 向け " にも " 色々機能を提供 Ruby on Rails

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます prototype.js 特徴 JavaScript 書きが割りと楽になる 様々な機能 クラスベース OO Ajax DHTML 用ユーティリティ Form Effect イベント処理 DOM の拡張

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます prototype.js のドキュメント ない ソース嫁 Using prototype.js v e.js.html

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます 使い方 script タグで取り込む コード書く // in html // in js var Animal = Class.create(); Animal.prototype = { initialize : function (name) { this.name = name; }, bark : function () { document.writeln(this.name); } var Dog = Class.create(); Dog.prototype = (new Animal).extend({ bark : function() { Animal.prototype.bark.apply(this); } });

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Prototype の Ajax 機能 Ajax.Request Ajax.Updater Ajax.PeriodicalUpdater

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Ajax.Request Ajax なリクエストを飛ばす <a href=" new Ajax.Request( '/hello', { parameters : Form.serialize(this.form), asynchronous : 1, onComplete : function(request){ alert(request.responseText); } ); ">blah blah.

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Ajax.Updater 特定のエレメントを動的に更新 <a href="#" onclick=" new Ajax.Updater( 'result', '/hello', { asynchronous: 1 } ); return false">Hello?

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Ajax.PeriodicalUpdater 特定のエレメントを定期的に更新

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます PeriodicalExecuter + AjaxRequest 定期的にサーバーサイドのデータを更新 new PeriodicalExecuter( function () { new Ajax.Request( '/autosave', { asynchronous: 1, parameters: Form.serialize($('textform')) }) }, 10 );

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Ajax 以外でも便利なの多し var name = $('name'); // getElementById('name'); alert($F('age')); Form.selialize($('profile')); // name=...&age=...&sex=... male famale Perl Ruby PHP

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます フレームワークと Prototype script src="prototype.js" より楽に HTML::Prototype プラグインによる拡張 Catalyst::Plugin::Prototype CGI::Application::Plugin::Prototype Sledge::Plugin::Prototype Template::Plugin::Prototype

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます HTML::Prototype 各種プラグインの中で使われている JavaScript レスで prototype.js HTML::Prototype::Useful 凝ったこともいくつかできる my $prototype = HTML::Prototype->new; print $prototype->define_javascript_functions; print $prototype->periodically_call_remote {... }

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます メソッド例 define_javascript_functions prototype.js を展開 link_to_remote Ajax.Updater として展開 auto_comple_field 入力を補完するための JavaScript を展開

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます TT + HTML::Prototype Template-Toolkit と一緒に使うと吉 [% prototype.define_javascript_functions %]... [% prototype.link_to_remote('Hello?', { update => 'result', url => '/hello', }) %]

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます Catalyst で prototype.js Agile Ajax development with Catalyst Catalyst::Plugin::Prototype // in your Catalyst application package MyApp; use strict; use Catalyst qw/-Debug Prototype/;... 1; // in your template [% c.prototype.link_to_remote(... ) %]

© 2005 株式会社はてな 本資料の一部または全部の無断複製・転載を禁じます まとめ Prototype を使うと JavaScript で楽できる Ajax もフレームワークから使う時代 今日紹介し切れなかったいろんな機能も一杯 Perl プログラマも JS を書こう !