SlideShare a Scribd company logo
EWD 3
トレーニング・コース #20
GlobalストレージのJavaScript用の抽象化
(a) DocumentNodeオブジェクト
M/Gateway Developments Ltd.
Rob Tweed
訳: 日本ダイナシステム株式会社 嶋 芳成
基本コンセプト
2016/9/11 EWD 3 トレーニング・コース #20 2
グローバルを表現する階層図
2016/9/11 EWD 3 トレーニング・コース #20 3
myGlobal("a")=123
myGlobal("b","c1")="foo"
myGlobal("b","c2")="foo2"
myGlobal("d","e1","f1")="bar1"
myGlobal("d","e1","f2")="bar2"
myGlobal("d","e2","f1")="bar1"
myGlobal("d","e2","f2")="bar2"
myGlobal("d","e2","f3")="bar3"
myGlobal
"a" 123
"b"
"c1" "foo"
"c2" "foo2"
"d"
"e1"
"e2"
"f1" "bar1"
"f2" "bar2"
"f1" "bar1"
"f2" "bar2"
"f3" "bar3"
2016/9/11 EWD 3 トレーニング・コース #20 4
Global節の木構造とJavaScriptオブジェクトと
の1対1の対応
myGlobal("a")=123
myGlobal("b","c1")="foo"
myGlobal("b","c2")="foo2"
myGlobal("d","e1","f1")="bar1"
myGlobal("d","e1","f2")="bar2"
myGlobal("d","e2","f1")="bar1"
myGlobal("d","e2","f2")="bar2"
myGlobal("d","e2","f3")="bar3"
myGlobal = {
a: 123,
b: {
c1: 'foo',
c2: 'foo2'
}
d: {
e1: {
f1: 'bar1',
f2: 'bar2'
}
e2: {
f1: 'bar1',
f2: 'bar2',
f3: 'bar3'
}
}
}
2016/9/11 EWD 3 トレーニング・コース #20 5
Global節とJavaScriptオブジェクトとの1対1の対応
myGlobal("a")=123
myGlobal("b","c1")="foo"
myGlobal("b","c2")="foo2"
myGlobal("d","e1","f1")="bar1"
myGlobal("d","e1","f2")="bar2"
myGlobal("d","e2","f1")="bar1"
myGlobal("d","e2","f2")="bar2"
myGlobal("d","e2","f3")="bar3"
myGlobal = {
a: 123,
b: {
c1: 'foo',
c2: 'foo2'
}
d: {
e1: {
f1: 'bar1',
f2: 'bar2'
}
e2: {
f1: 'bar1',
f2: 'bar2',
f3: 'bar3'
}
}
}
添え字 プロパティ
• グローバル節
myGlobal("d","e2","f3")
• JavaScript オブジェクト
myGlobal.d.e2.f3
2016/9/11 EWD 3 トレーニング・コース #20 6
Global節とJavaScriptオブジェクトとの1対1の対応
• グローバル節
myGlobal("d","e2","f3")
• JavaScript オブジェクト
myGlobal.d.e2.f3
2016/9/11 EWD 3 トレーニング・コース #20 7
Global節とJavaScriptオブジェクトとの1対1の対応
しかし...
JavaScriptオブジェクトはメモリー上にあり、グローバ
ル節はディスク上にあり永続的です
• グローバル節
myGlobal("d","e2","f3")
• JavaScript オブジェクト
myGlobal.d.e2.f3
2016/9/11 EWD 3 トレーニング・コース #20 8
Global節とJavaScriptオブジェクトとの1対1の対応
グローバル節の抽象化を、永続的なJavaScriptオブ
ジェクトにすることができるでしょうか?
ewd-document-store
• Globalストレージの JavaScript 用抽象化
https://github.com/robtweed/ewd-document-store
• 基本的な cache.node API の上に搭載されます
2016/9/11 EWD 3 トレーニング・コース #20 9
ewd-document-store
• Globalストレージの JavaScript 用抽象化
https://github.com/robtweed/ewd-document-store
• 基本的な cache.node API の上に搭載されます
• ewd-xpress のワーカーの中に自動的に読み込まれます
2016/9/11 EWD 3 トレーニング・コース #20 10
ewd-document-store
• Globalストレージの JavaScript 用抽象化
https://github.com/robtweed/ewd-document-store
• 基本的な cache.node API の上に搭載されます
• ewd-xpress のワーカーの中に自動的に読み込まれます
• ewd-xpress 内では this.documentStoreでアクセスでき
ます
2016/9/11 EWD 3 トレーニング・コース #20 11
ewd-document-store
• Globalストレージの JavaScript 用抽象化
https://github.com/robtweed/ewd-document-store
• 基本的な cache.node API の上に搭載されます
• ewd-xpress のワーカーの中に自動的に読み込まれます
• ewd-xpress 内では this.documentStoreでアクセスでき
ます
• テストとデバッグのために、それだけ(スタンドアロン)でも利用可
能です
2016/9/11 EWD 3 トレーニング・コース #20 12
ewd-document-store
• Globalストレージの JavaScript 用抽象化
• テストの枠組みの中で用いる
• 次のサンプルを見てください
c:ewd3node_modulesewd-qoper8-cahcenode_modulesewd-
document-storelibtestsCacheStandalone.js
2016/9/11 EWD 3 トレーニング・コース #20 13
CacheStandalone.js を編集する
var DocumentStore = require('ewd-document-store');
var interface = require('cache');
var db = new interface.cache();
console.log('db: ' * JSON.stringify(db));
//次のパラメータをあなたのCachéシステムに合わせて変更してください
var ok = db.open({
path: '/opt/cache/mgr',
username: '_SYSTEM',
password: 'SYS',
namespace: 'USER'
});
console.log('ok: ' + JSON.stringify(ok));
var documentStore = new DocumentStore(db);
console.log(db.version());
var rob = new documentStore.DocumentNode('rob');
2016/9/11 EWD 3 トレーニング・コース #20 14
CacheStandalone.js を編集する
var DocumentStore = require('ewd-qoper8-cache/node_modules/ewd-document-store');
var interface = require('cache');
var db = new interface.cache();
console.log('db: ' * JSON.stringify(db));
//次のパラメータをあなたのCachéシステムに合わせて変更してください
var ok = db.open({
path: 'c:InterSystemsCache2015-2mgr',
username: '_SYSTEM',
password: 'SYS',
namespace: 'USER'
});
console.log('ok: ' + JSON.stringify(ok));
var documentStore = new DocumentStore(db);
console.log(db.version());
var rob = new documentStore.DocumentNode('rob');
2016/9/11 EWD 3 トレーニング・コース #20 15
c:ewd3docStoreTest.js として保存
var DocumentStore = require('ewd-qoper8-cache/node_modules/ewd-document-store');
var interface = require('cache');
var db = new interface.cache();
console.log('db: ' * JSON.stringify(db));
//次のパラメータをあなたのCachéシステムに合わせて変更してください
var ok = db.open({
path: 'c:InterSystemsCache2015-2mgr',
username: '_SYSTEM',
password: 'SYS',
namespace: 'USER'
});
console.log('ok: ' + JSON.stringify(ok));
var documentStore = new DocumentStore(db);
console.log(db.version());
var rob = new documentStore.DocumentNode('rob');
2016/9/11 EWD 3 トレーニング・コース #20 16
実行する
cd ewd3
node docStoreTest
2016/9/11 EWD 3 トレーニング・コース #20 17
実行する
cd ewd3
node docStoreTest
• これで、DocumentNodeオブジェクトを用いた一連
のサンプルを実行します
• これを、あなたのテスト用の基本的な枠組みとして利
用することができます
2016/9/11 EWD 3 トレーニング・コース #20 18
あなたのテストの枠組みに合わせてください
var DocumentStore = require('ewd-qoper8-cache/node_modules/ewd-document-store');
var interface = require('cache');
var db = new interface.cache();
var ok = db.open({
path: 'c:InterSystemsCache2015-2mgr',
username: '_SYSTEM',
password: 'SYS',
namespace: 'USER'
});
var documentStore = new DocumentStore(db);
// ここ先をすべて削除して置き換えてください
// documentStore を用いると、あなたのデータベースへの抽象化されたインターフェースが利用できます
// これを用いて、この後のサンプルを試してください
// this.documentStore を、documentStrore に置き換えるだけです
2016/9/11 EWD 3 トレーニング・コース #20 19
DocumentNode オブジェクト
2016/9/11 EWD 3 トレーニング・コース #20 20
DocumentNode オブジェクト
var dnode = new documentStore.DocumentNode(name, subscripts);
スタンドアロンのテストの枠組みを用いるとき
2016/9/11 EWD 3 トレーニング・コース #20 21
DocumentNode オブジェクト
var dnode = new this.documentStore.DocumentNode(name, subscripts);
ewd-xpres を用いるとき
2016/9/11 EWD 3 トレーニング・コース #20 22
DocumentNode オブジェクト
var dnode = new this.documentStore.DocumentNode(name, subscripts);
document storeの階層構造の中の1つの節(ノード)を表します
この時点では、それが物理的に存在するかどうかは分かりません
すなわち、これは節(ノード)を生成しません
2016/9/11 EWD 3 トレーニング・コース #20 23
DocumentNode オブジェクト
var dnode = new this.documentStore.DocumentNode(name, subscripts);
document storeの階層構造の中の1つの節(ノード)を表します
この時点では、それが物理的に存在するかどうかは分かりません
すなわち、これは節(ノード)を生成しません
その節を表すオブジェクトのインスタンスと、その節を操作しアクセスす
るための、それに付随する一群のメソッドとプロパティを生成します
2016/9/11 EWD 3 トレーニング・コース #20 24
DocumentNode オブジェクト
var dnode = new this.documentStore.DocumentNode('myDoc', ['d','e2']);
これは、 mydoc("d","e2") を表します
2016/9/11 EWD 3 トレーニング・コース #20 25
DocumentNode オブジェクト
var dnode = new this.documentStore.DocumentNode('myDoc', ['d','e2']);
これは、 mydoc("d","e2") を表します
生成: dnode.value = 'foo2';
2016/9/11 EWD 3 トレーニング・コース #20 26
DocumentNode オブジェクト
var dnode = new this.documentStore.DocumentNode('myDoc', ['d','e2']);
これは、 mydoc("d","e2") を表します
生成: dnode.value = 'foo2';
取得: var x = dnode.value;
2016/9/11 EWD 3 トレーニング・コース #20 27
DocumentNode オブジェクト
var dnode = new this.documentStore.DocumentNode('myDoc', ['d','e2']);
これは、 mydoc("d","e2") を表します
生成: dnode.value = 'foo2';
取得: var x = dnode.value;
value は読み書きできるプロパティです
2016/9/11 EWD 3 トレーニング・コース #20 28
DocumentNode オブジェクト
var dnode = new this.documentStore.DocumentNode('myDoc', ['d','e2']);
これは、 mydoc("d","e2") を表します
生成: dnode.value = 'foo2';
取得: var x = dnode.value;
削除: dnode.delete();
2016/9/11 EWD 3 トレーニング・コース #20 29
DocumentNode オブジェクト
var dnode = new this.documentStore.DocumentNode('myDoc', ['d','e2']);
これは、 mydoc("d","e2") を表します
生成: dnode.value = 'foo2';
取得: var x = dnode.value;
削除: dnode.delete();
注意: delete は、操作中の Globalストレージの木構造の中の、この節の下に
付いている DocumentNode もすべて一緒に削除します
2016/9/11 EWD 3 トレーニング・コース #20 30
DocumentNode オブジェクト
var dnode = new this.documentStore.DocumentNode('myDoc', ['d','e2']);
これは、 mydoc("d","e2") を表します
生成: dnode.value = 'foo2';
取得: var x = dnode.value;
削除: dnode.delete();
存在? var exists = dnode.exists; // true|false
2016/9/11 EWD 3 トレーニング・コース #20 31
Global節とJavaScriptオブジェクト
myDoc("a")=123
myDoc("b","c1")="foo"
myDoc("b","c2")="foo2"
myDoc("d","e1","f1")="bar1"
myDoc("d","e1","f2")="bar2"
myDoc("d","e2","f1")="bar1"
myDoc("d","e2","f2")="bar2"
myDoc("d","e2","f3")="bar3"
var dnode = new this.documentStore.DocumentNode('myDoc', ['d']);
2016/9/11 EWD 3 トレーニング・コース #20 32
Global節とJavaScriptオブジェクト
myDoc("a")=123
myDoc("b","c1")="foo"
myDoc("b","c2")="foo2"
myDoc("d","e1","f1")="bar1"
myDoc("d","e1","f2")="bar2"
myDoc("d","e2","f1")="bar1"
myDoc("d","e2","f2")="bar2"
myDoc("d","e2","f3")="bar3"
var dnode = new this.documentStore.DocumentNode('myDoc', ['d']);
dnode.hasChildren // true
dnode.hasValue // false
dnode.exists // true
2016/9/11 EWD 3 トレーニング・コース #20 33
Global節とJavaScriptオブジェクト
myDoc("a")=123
myDoc("b","c1")="foo"
myDoc("b","c2")="foo2"
myDoc("d","e1","f1")="bar1"
myDoc("d","e1","f2")="bar2"
myDoc("d","e2","f1")="bar1"
myDoc("d","e2","f2")="bar2"
myDoc("d","e2","f3")="bar3"
var dnode = new this.documentStore.DocumentNode('myDoc', ['d', 'e2']);
dnode.hasChildren // true
dnode.hasValue // false
dnode.exists // true
2016/9/11 EWD 3 トレーニング・コース #20 34
Global節とJavaScriptオブジェクト
myDoc("a")=123
myDoc("b","c1")="foo"
myDoc("b","c2")="foo2"
myDoc("d","e1","f1")="bar1"
myDoc("d","e1","f2")="bar2"
myDoc("d","e2","f1")="bar1"
myDoc("d","e2","f2")="bar2"
myDoc("d","e2","f3")="bar3"
var dnode = new this.documentStore.DocumentNode('myDoc', ['d', 'e2', 'f3']);
dnode.hasChildren // false
dnode.hasValue // true
dnode.exists // true
2016/9/11 EWD 3 トレーニング・コース #20 35
Global節とJavaScriptオブジェクト
myDoc("a")=123
myDoc("b","c1")="foo"
myDoc("b","c2")="foo2"
myDoc("d","e1","f1")="bar1"
myDoc("d","e1","f2")="bar2"
myDoc("d","e2","f1")="bar1"
myDoc("d","e2","f2")="bar2"
myDoc("d","e2","f3")="bar3"
var dnode = new this.documentStore.DocumentNode('myDoc', ['d', 'e2', 'f4']);
dnode.hasChildren // false
dnode.hasValue // false
dnode.exists // false
その節が物理的に存在しなくても、それに対応する DocumentNodeオブジェクトは定義可能です
2016/9/11 EWD 3 トレーニング・コース #20 36
Global節とJavaScriptオブジェクト
myDoc("a")=123
myDoc("b","c1")="foo"
myDoc("b","c2")="foo2"
myDoc("d","e1","f1")="bar1"
myDoc("d","e1","f2")="bar2"
myDoc("d","e2","f1")="bar1"
myDoc("d","e2","f2")="bar2"
myDoc("d","e2","f3")="bar3"
var dnode = new this.documentStore.DocumentNode('myDoc', ['d', 'e2', 'f3']);
dnode.name // f3 節の名前 === グローバルの最後の添字 です
dnode.parent // myDoc("d","e2")
これは DocumentNode オブジェクトを返します
2016/9/11 EWD 3 トレーニング・コース #20 37
Global節とJavaScriptオブジェクト
myDoc("a")=123
myDoc("b","c1")="foo"
myDoc("b","c2")="foo2"
myDoc("d","e1","f1")="bar1"
myDoc("d","e1","f2")="bar2"
myDoc("d","e2","f1")="bar1"
myDoc("d","e2","f2")="bar2"
myDoc("d","e2","f3")="bar3"
var dnode = new this.documentStore.DocumentNode('myDoc', ['d', 'e2']);
dnode.firstChild // myDoc("d","e2","f1")
dnode.lastChild // myDoc("d","e2","f3")
dnode.previousSibling // myDoc("d","e1")
dnode.nextSibling // undefined
2016/9/11 EWD 3 トレーニング・コース #20 38
DocumentNode
オブジェクト
DocumentNode オブジェクト
• これについては、このコースのこれ以降のパートでさらに
説明します
• さらに詳細については、以下を参照してください
http://gradvs1.mgateway.com/download/ewd-document-store.pdf
2016/9/11 EWD 3 トレーニング・コース #20 39

More Related Content

PPTX
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
PPTX
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
PPTX
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化 - (f) Documentデータベースのできること
PPTX
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
PPTX
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
PPTX
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
PPTX
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
PPTX
PandasとSQLとの比較
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化 - (f) Documentデータベースのできること
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
PandasとSQLとの比較

What's hot (20)

PDF
RとCDISC
PDF
Rとcdisc@moss10 公開用
PPTX
BPStudy32 CouchDB 再入門
KEY
はじめてのCouch db
PDF
Mongodb 紹介
PPTX
CakePHP でお小遣い帳をつくってみよう
KEY
カジュアルにソースコードリーディング
PDF
ビギナーだから使いたいO/Rマッパー ~Tengを使った開発~
PDF
Hadoop jobbuilder
PDF
月間10億pvを支えるmongo db
PDF
EucalyptusのHadoopクラスタとJaqlでBasket解析をしてHiveとの違いを味わってみました
PPTX
CakePHP+Smartyハイブリッドによるラクラク開発
ZIP
負荷テストことはじめ
PDF
Haskell勉強会 14.1〜14.3 の説明資料
PPTX
CakePHP 2.x 複数レコード同時保存
PDF
Backbone model collection (jscafe 8)
PDF
XOOPS Cube Conference 2012 Developer Workshop 3
PPTX
HTMLの要素の選び方
KEY
今さら始めるCoffeeScript
PDF
Spring Data in a Nutshell
RとCDISC
Rとcdisc@moss10 公開用
BPStudy32 CouchDB 再入門
はじめてのCouch db
Mongodb 紹介
CakePHP でお小遣い帳をつくってみよう
カジュアルにソースコードリーディング
ビギナーだから使いたいO/Rマッパー ~Tengを使った開発~
Hadoop jobbuilder
月間10億pvを支えるmongo db
EucalyptusのHadoopクラスタとJaqlでBasket解析をしてHiveとの違いを味わってみました
CakePHP+Smartyハイブリッドによるラクラク開発
負荷テストことはじめ
Haskell勉強会 14.1〜14.3 の説明資料
CakePHP 2.x 複数レコード同時保存
Backbone model collection (jscafe 8)
XOOPS Cube Conference 2012 Developer Workshop 3
HTMLの要素の選び方
今さら始めるCoffeeScript
Spring Data in a Nutshell
Ad

Viewers also liked (13)

DOCX
Actividad 2 2 virginia
PPTX
Qué es un blog
PPTX
Unidad 3 pnnc
PPTX
Busquedas avanzadas
DOCX
Sejarah masuknya internet di indonesia
PPTX
Reforma Tributaria
PDF
empathy_as_a_service
PPTX
Qué son las redes
PDF
WCRE09b.ppt
DOCX
Subhashri_Resume-Updated
PPT
La vida intermareal
DOCX
TJen_Resume
DOCX
Conociendo al personal docente
Actividad 2 2 virginia
Qué es un blog
Unidad 3 pnnc
Busquedas avanzadas
Sejarah masuknya internet di indonesia
Reforma Tributaria
empathy_as_a_service
Qué son las redes
WCRE09b.ppt
Subhashri_Resume-Updated
La vida intermareal
TJen_Resume
Conociendo al personal docente
Ad

Similar to EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト (20)

PPTX
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
PPTX
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
PPTX
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
PPTX
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
PPTX
EWD 3トレーニングコース#2 EWD 3の概要
PPTX
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化 - (g) イベント駆動の索引管理
PPTX
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
PPTX
EWD 3トレーニング・コース #2 EWD 3 の概要
PPT
[A 3]SSJSでも使える!Javascriptでオブジェクト指向プログラミング入門
PDF
これからのJavaScriptー関数型プログラミングとECMAScript6
PDF
最強オブジェクト指向言語 JavaScript 再入門!
PPTX
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
PPTX
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
PPTX
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
PDF
JavaScript (ECMAScript) 2013
PDF
JavaScript/CSS 2015 Autumn
PDF
traceur-compilerで ECMAScript6を体験
PPTX
EWD 3トレーニングコース#17 Globalストレジ・データベース入門
PDF
ちょっと詳しくJavaScript 第3回【prototype】
PDF
JavaScriptおよびXPages Vote技術解説
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
EWD 3トレーニングコース#2 EWD 3の概要
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化 - (g) イベント駆動の索引管理
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
EWD 3トレーニング・コース #2 EWD 3 の概要
[A 3]SSJSでも使える!Javascriptでオブジェクト指向プログラミング入門
これからのJavaScriptー関数型プログラミングとECMAScript6
最強オブジェクト指向言語 JavaScript 再入門!
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
JavaScript (ECMAScript) 2013
JavaScript/CSS 2015 Autumn
traceur-compilerで ECMAScript6を体験
EWD 3トレーニングコース#17 Globalストレジ・データベース入門
ちょっと詳しくJavaScript 第3回【prototype】
JavaScriptおよびXPages Vote技術解説

More from Kiyoshi Sawada (20)

PPTX
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
PPTX
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
PPTX
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
PPTX
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
PPTX
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
PPTX
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
PPTX
EWD 3トレーニングコース#16 ewd-xpressサービス
PPTX
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
PPTX
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
PPTX
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
PPTX
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
PPTX
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
PPTX
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
PPTX
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
PPTX
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
PPTX
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
PPTX
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
PPTX
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
PPTX
EWD 3トレーニングコース#4 ewd-xpressのインストールと構成
PPTX
EWD 3トレーニングコース#3 EWD 3 モジュールの概要
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
EWD 3トレーニングコース#4 ewd-xpressのインストールと構成
EWD 3トレーニングコース#3 EWD 3 モジュールの概要

EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト