マスカットでは、開発者は画面を定義する「レイアウト定義XML」と動作を定義する「イベント定義XML」の2種類のXMLファイルを作成するだけでリッチクライアントを構築することができます。そこではJavaScriptを基本的には記述することはありません。
画面の描画、ユーザイベントの処理、送信メッセージおよび受信メッセージのデータバインディングなどの裏方の処理は、開発者が作成したレイアウト定義XMLとイベント定義XMLに基づきマスカットのフレームワークがすべて処理します。
簡単な例として、足し算をするアプリケーションを以下に示します。ソースコードを見ればおわかりのように、JavaScriptを一切記述していません。
![足し算サンプルのアプリケーション画面](/images/article/0611/16/1/1.gif)
図1:足し算サンプルのアプリケーション画面
レイアウト定義XML
<?xml version="1.0" encoding="UTF-16LE"?>
<layoutDef>
<layout name="addLayout">
<label name="title" top="10" left="10" text="足し算プログラム" />
<text name="arg1" top="50" left="10" width="50" datatype="A" />
<label name="plus" top="50" left="70" text="+" />
<text name="arg2" top="50" left="90" width="50" datatype="A" />
<button name="equal" top="50" left="160" title="=" />
<text name="ans" top="50" left="270" width="50" datatype="A" />
</layout>
</layoutDef>
イベント定義XML
<?xml version="1.0" encoding="UTF-16LE"?>
<eventDef>
<component id="equal">
<event id="onclick" remoteUrl="add">
<param rootNode="addParam">
<source obj="arg1" node="arg1"/>
<source obj="arg2" node="arg2"/>
</param>
<result rootNode="addResult">
<target out="ans" in="ans"/>
</result>
</event>
</component>
</eventDef>
|