Nitrogen Web Framework

2,687 views
2,603 views

Published on

Introduction about Nitrogen Web Framework

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,687
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Nitrogen Web Framework

  1. 1. Nitrogen Erlang のウェブフレームワーク ダオ ゴック タン 2009/4/15
  2. 2. 特徴 <ul><li>規約のかげで設定が少ない </li></ul><ul><li>サーバー側 : イベント( Ajax または Comet による View と Controller との間の通信)のサポートが強い </li></ul><ul><li>ブラウザ側 : jQuery 、 jQuery UI 、 LiveValidate データバインディング </li></ul><ul><li>View テンプレート:作りやすい、使いやすい </li></ul><ul><li>Inets 、 Mochiweb 、 Yaws 上で実行可 </li></ul>
  3. 3. ソースコード http://github.com/rklophaus/nitrogen/graphs/languages Shell :少ない JavaScript :〜 Erlang
  4. 4. イベント・モデル Button1 Button2 ( JavaScript の イベント ) 通信: Ajax/Comet データ: JSON (リスポンス、 Comet のイベント) 通信: Ajax/Comet データ: JSON コード: JavaScript ブラウザ側 サーバー側 Button3 データ検証 データバインディング UI アップデート UI アニメーション効果 ドラグ&ドロップ … http://voodootikigod.com/2008/10/02/ajax-head-design-pattern/ View Controller
  5. 5. 流れ ウェブサーバー (Inets/Mochiweb/Yaws) wf_inets:do/wf_mochiweb:loop/wf_yaws:out PageModule = wf_platform:route(URL) URL が /web/blogs -> PageModule が web_blogs になる リクエストを処理するプロセスの dictionary をリセット (1 リクエスト -> 1 処理プロセス ) PageModule:main PageModule:event(EventTag) wf_platform:build_response dictionary にあるものからリスポンスを生成 フレームワーク P ostback リクエスト (Ajax/Comet) 普通 リクエスト アプリケーション: wf : xxx 関数を呼び出す wf : xxx 関数が dictionary にコンテンツや header などをセットする リクエスト リスポンス
  6. 6. wf モジュル wf_utils 文字列のフォマット wf_platform サーバータイプに依存するもの: cookie など wf_session セッションの管理 wf_bind データバインディング wf_path HTML エレメントの id の生成 wf_convert HTML エンコードなど wf_render HTML 、 JavaScript の生成 wf_comet wf 他のモジュルに delegate する …
  7. 7. 活動 <ul><li>2008 〜 </li></ul><ul><li>HP : http://nitrogenproject.com/ </li></ul><ul><li>メーリング・リスト : http://groups.google.com/group/nitrogenweb 142 メンバー 〜 8 通 / ー日 </li></ul>
  8. 8. ソースコードのコミット
  9. 9. http://github.com/rklophaus/nitrogen/graphs/impact
  10. 10. 問題点 <ul><li>( 普通ウェブ開発者にとっての順番 ) </li></ul><ul><li>DB layer なし </li></ul><ul><li>REST なし </li></ul><ul><li>i18n なし </li></ul><ul><li>HTML コンテンツ・ キャッシュ (ページ・ キャッシュ 、フラグメント・ キャッシュ )なし </li></ul><ul><li>SOAP なし </li></ul>

×