itpro.nikkeibp.co.jp

次世代Web言語Alinous-Core
Web特化型言語とビジネスチャレンジ
飯塚 友裕
http://jp.alinous.org
Alinous-Coreって何
?
最近流行りの
DSL(ドメイン特化言語)
WEBDB向けDSLです
Java Vm
上に実装
米国NetBeans.org
パートナーの
私が作りました
NetBeans
最高!!
Plugin提供と記事提供で
パートナーになりました
どうやって
動かすの?
(開発・デバッグ)環境
一式が
Eclipse のプラグインに
なってます
ウェブサーバもプラグインから自前で
立ち上がる
デバッガも実装、便利
画面はこんな感じ
どんな言語か?
HTML + SQL
+ Alinous-Coreスクリプト
(DOM変数を持つスクリプ
ト)
この3つの言語の
組み合わせ
複雑なフレームワー
クを意識する必要な
し!
とにかくシンプル
はやくつくれる
コード量、時間は
通常言語の、
2〜10分の一
http://fusekako.jp
http://alinous.jp
の実際のAlinous-Coreの事例で検証
たとえば

DBからレコードを取っ
てきてこんなテーブルを
表示したいとき
まずは・・・

2つのファイルを用
意すればいい
Sample.alns(ロジック)
Sample.html(デザイン)

Sample.alnsに
SQL+α
のロジックを書く

Sample.htmlにデザ
インを書く
という流れ

では、実際のソースと
動きはというと

http://localhost/Sample.html
にアクセスすると
Sample.alnsを実行
// EXECUTE SELECT STATEMENT
if($IN.comment != null){
$LIKE_STMT = '%' + $IN.comment + '%';
}
スクリプトの
中でそのまま
SQLを実行
SELECT * INTO RECORDS FROM SAMPLE_TABLE
WHERE
NAME = $IN.name AND
EMAIL = $IN.mail AND
COMMENT like $LIKE_STMT
ORDER BY NAME DESC
limit 10;
実行して出来た変数を
DOM形式
の変数が出
来る
(デバッガ
で表示)
HTMLに渡す
<TR alns:iterate="@RECORDS"
alns:variable="oneRecord">
<TD width="200">
{$oneRecord.NAME}
</TD>
<TD width="200">
{$oneRecord.EMAIL}
</TD>
<TD width="300">
{$oneRecord.COMMENT}
</TD>
</TR>
埋め込
む

表示される
他にできることは
?

Webで必要な機能
は網羅


(星は実装の苦労度スター)

カスタム・フォームバリデータ★★

「戻る」ボタン自動生成

HTTPセッションのハンドリング★

ページのフォワード機能★★★

メールの高速大量送信★★

Basic認証★

RSS★

ファイルアップロード★

HTMLの部品化(ポートレットもしくは仮想FRAMEタ
グ機能)
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
★★★★★★★★★★★★★★★★★★★★★★★★★
さらに、いざと言
うときは?


JavaConnectorで
Javaのメソッドを呼
べる
Alinous-Coreを利用した
ビジネスチャレンジ
は
というと
とにかくシンプルに作
れるのを生かして
スパイラル開発の
問題の解決にチャレンジ

中小規模Webのプロジ
ェクトは、スパイラル
型の開発になるが・・
(ウォーターフォール形式は無理)
スパイラル開発の問題1

短期で結果を出さなければならな
い
開発
レビュー
とにかく、工期
がシビア
スパイラル開発の問題2

受注側の採算があわな
い!
なぜならば・・・

仕様変更がでるたびに
コストが増大
変更箇所の解析
作りなおし
再テスト
変更箇所の解析
作りなおし
再テスト
変更箇所の解析
作りなおし
再テスト
変更箇所の解析
作りなおし
再テスト
変更箇所の解析
作りなおし
再テスト
変更箇所の解析
作りなおし
再テスト
初期工数
なので、
国内での開発でも厳しい

さらに、オフショア
の場合

海外へのコミュニケー
ションのコストが大き
い
でも、、、、
オフショア開発
もやりたい!!
Web系は
人手不足!

ここは、Alinous-Core
の出番
スパイラル型開発は開発・
保守の両方の効率
が命
初期工数
変更箇所の解析
作りなおし
再テスト
変更箇所の解析
作りなおし
再テスト
変更箇所の解析
作りなおし
再テスト
変更箇所の解析
作りなおし
再テスト
変更箇所の解析
作りなおし
再テスト
Alinous-Coreが
開発効率UPは得意
海外との
コミュニケーションの
コストの問題は?
1度のコミュニケーシ
ョンでより多くの情報
を正確に、実装チーム
に伝えたい
仕様決定の際に、その
先の実装が見えれば、
かなり正確なコミュニ
ケーションが出来る!
(特に小規模開発では)
なので

良く出てくるパターン
を、テンプレート化し
て共有!
実際に活動に取り組
んでいる企業

インドの会社、フィデル
テクノロジーズ株式会社
http://www.fideltech.com/

Alinous-Coreは出現当初
からマークして、社員数
人で徹底的に検証
スゴイ!
フィデルテクノロジーズの
中小規模Web向けモデル

徹底した工程管理が命
開発チーム
(インド)
よく出てくる技
術スキームを徹
底して共有
日本語で
顧客対応
顧客向け
コンサル
仕様決定の段階で(要件定義だけ
でなく、)実装まで見えているこ
とが特徴
そのような開発ノウハ
ウは国内や世界でも通
用するはず!!
これから、次世代言語を
利用して、一緒に新しい
Web開発の方法論を開発
していく予定!!
まさに、インドと日本
の共同プロジェクト
まだまだ、
Alinous-Coreは
始まったばかりだが
めざせ!
世界進出!
御静聴
ありがとうございました!