MANDALA.net 2005 の飛躍

 MANDALA.net 2005 は、MANDALA V2, V4, V5, V6 という一連のソフトウェア製品の後継ですが、大いなる跳躍があります。 これは、従来の Visual Basic から VB.NET への跳躍になぞらえることができます。



1. 従来の MANDALA とは

 まず従来の MANDALA を振り返ってみましょう。これは、手組みのプログラミングに代わって、 その大部分をロボットにプログラミングさせるものだと言えます。 つまり機械生成ツールだったのです。 さらに言葉を加えると、ありきたりの生成ツールとは比べものにならない“ポスト生成ツール”だということができます。 アプリ開発者の方々がプログラミングした“ビジネスロジック部品”をロボットの目でしっかりと見据えた後 (ポスト) に、 機械生成を行なう「いわば目をもつ生成ツール」だったといえるでしょう。


2. もはや生成ツールとはいいがたい

 MANDALA.net でも、こうした特長はしっかりと受け継いでいます。 しかし、生成すべきプログラムの量は大幅に減ってしまったのです。 いや、激減させることに成功したというべきでしょう。 これは、VB.NET のオブジェクト指向技術を駆使した成果です。 ここまで減ってしまうと、生成ツールだとは言いにくくなります。

 ちなみに、一般に VB.NET 向けの生成ツールが存在したら、疑ってかかるべきでしょう。 「本当に大量のプログラム生成が必要なのか?」 と。


3. フレームワークとしての MANDALA.net

 では MANDALA は何だと言うべきでしょか? ここを追求すると 「MANDALA.net 2005 の跳躍とは何か?」 にせまることができます。

 従来の MANDALA で生成していたプログラムの大部分は、フレームワークという形態の dll 群に置き換えられました。 ですから、フレームワークへと変身をとげたと言うべきでしょう。「ヘンシーン」 と叫びながら跳躍して空中回転をした結果がフレームワークだったのです。 言うまでもないことですが、この MANDALA フレームワークは、概念だけのフレームワークではなく、実際に動作するデバッグ済みの実動フレームワークです。

 ちなみに、.NET のフレームワークと MANDALA.net フレームワークの違いは何かとよく質問を受けます。 前者は基本機能を提供するいわば基礎となるフレームワーク (プラットフォーム) であり、後者は前者の上に構築された業務アプリケーション向けの共通的な機能を提供するフレームワークです。 このようにフレームワークは階層構造をなすものです。


4. ポスト生成ツールとしての MANDALA

 フレームワークの話はこれくらいにして、ポスト生成ツールとしての MANDALA の話に移りましょう。

 これは形がなくなってしまったのでしょうか? 実は、なくしてしまおうと努力したのですが、少し残ってしまいました。 もちろん種々のデザインパターンを検討するなど、オブジェクト指向技術を駆使して臨んだのですが、 複数のオブジェクトにまたがるチェックロジックやアップデートプロパゲーションに関する部分は、 生成方式を用いた方がよいという結論に至ったのです (正確に言うと Reflection という機構を用いれば、 もう少しだけ生成部分を少なくできるのですが、これは省略することにしました)。

 こうなってみると、ポスト生成ツールと呼ぶよりも、ポスト糊付けツールあるいはポスト合成ツールと呼んだ方がふさわしいでしょう。 つまり、アプリ開発者の方々がプログラミングした“ビジネスロジック部品”をロボットの目でしっかりと見据えた後 (ポスト) に、 フレームワークと結合するためのツールになったのです。 「目をもつツール」だという特長は、しっかりと受け継いでいるのです。


Copyright (C) 1996-2005 By AppliTech, Inc. All Rights Reserved.
AppliTechMANDALA および workFrame=Browser は、アプリテック株式会社の登録商標です。
ここに掲載の社名、製品名には、各社の商標または登録商標があります。



アプリテック株式会社
http://www.applitech.co.jp/