JavaScript Package - OPEN INTRA-MART
Download
Report
Transcript JavaScript Package - OPEN INTRA-MART
CSJSのお悩み解決!
im-UISumplements Project の全貌を5分でしゃべる♪
Last Update 2009/01/27
- Since 2007/12/25 Prezenter:Emoto (emooru)
OPEN INTRA-MART
CSJSを開発していて、
こんなお悩みはありませんか?
たとえば、私はISPのCSJSライブラリをいくつか作った
フローティングウィンドウ
入力支援
簡易HTMLエディタ etc
しかし。。
CSJSはライブラリ化しづらい
名前の衝突の考慮、APIリスト
必要なJSファイルをScriptタグで指定するのは面倒
依存関係を考慮
im-JSPackman という基盤を開発♪
OPEN INTRA-MART
im-JSPackman
〜 intra-mart Client-Side JavaScript Package Management 〜
JavaScript ライブラリを開発・管理・提供するには?
⇒ Java に習おう!
再利用性・メンテナンス性
向上をねらう
JavaScript でクラス開発の方法を提案!
クラス単位での開発
1JSファイル1クラス定義
継承
パッケージ化
機能をクラス・パッケージで分類・管理・提供
その他
instanceof による型判別
例外クラス、例外処理の導入
JSDoc(http://jsdoc.sourceforge.net/)によるAPIリスト化 等
OPEN INTRA-MART
[利用者] 利用イメージ
外部JSファイルを指定する script タグは1つだけ!
<html>
⇒ html ファイルのメンテナンスも楽!
<head>
<script type=“text/javascript” src=“../csjs/im/lang/jspackman.js” />
<script type=“text/javascript”>
動的にJSファイルを読込み、クラスをロード!
Import(“im.sample.SampleMain”);
⇒ 依存関係を気にする必要なし!
使用するクラスだけをインポート指定!
Import(“im.util.List”);
Main.invoke(“im.sample.SampleMain”);
function sample () {
var list = new im.util.List();
初期処理用に、Mainクラスを指定!
※onloadイベントの代わり
}
</script>
</head>
[注意]
<body> … </body>
インポートしたクラスは、Main クラスの main メソッドが
実行されるタイミング以降に利用できる!
</html>
OPEN INTRA-MART
今後の予定♪ 〜構築パッケージ〜
Ver.0.5 (開発版)
2009/06末 公開予定
※完成したUI部品
から随時公開
im.ui (im-UISupplements)
〜 UI部品s 〜
Ver.0.3 (開発版)
im.util
im.text
im.jsunit
im.net
2009/03末 公開予定
※徐々にクラス追加!
im.log
Ver.0.1 (開発版)
im.lang (im-JSPackman[core])
Native JavaScript
OPEN INTRA-MART
2007/12/25 公開♪
具体的には。。
UI 部品
フローティングウィンドウ、ツリー etc…
デモ:フローティングウィンドウの可能性の広さ
バリデータ
サーバサイドと連動まで検討
intra-mart タブ化
アプリケーションをintra-mart画面内のタブで表示
im-JSSPと連動したサンプルアプリケーション
検討中♪
ご興味を持たれた方は是非
一緒に楽しく開発しましょう♪
OPEN INTRA-MART