コードアシスト リファレンス 第 8 章

◎ アプリフレーム

(1) アプリフレーム概要

アプリフレーム (AppliFrame) とは、アプリケーションのフレームを構成するソフトウェア部品群を意味します。アプリフレーム生成ツールは、このアプリフレームの原型を構築するためのツールです。

アプリフレームの役割は、複数のアプリケーションプログラムで共通に使用可能なソフトウェア部品を保持することです。その中にはフレームワークとして働く大枠の部品や、共通ライブラリのような個別の部品など様々な役割を持った部品 (クラス) が存在することになるでしょう。

MANDALA.net アプリフレーム生成ツール によって作成されるアプリフレームは、リレーショナルデータベースへのアクセスを中心としたフレームワーク部分、 および MANDALA.net によって開発するアプリケーションで共通使用されるであろうと予想される部品群から構成されています。

このアプリフレーム生成と、個別アプリケーションのビジネスロジック部品生成を使用することにより、ごく単純な動作を行うアプリケーションが作られます。アプリケーション開発者の方々は、この生成されたアプリケーションに機能を実装していくことで、効率の良い開発を行うことができるようになります。

また、生成ツールで作成したアプリフレームのソースコードは、自由に改変して使用することができます。標準提供のアプリフレームは、弊社の想定する簡単なアプリケーションシステムを構築するために最大公約数的な機能しか持っていません。そのままでは機能が不足していたり不具合が生じる場合には、アプリフレームを編集してご都合の良いように追加・改造してください。

また場合によってはアプリフレーム全体を別のクラスライブラリで置き換えて、動作の異なるアプリケーションシステムを開発することも可能です。

(2) アプリフレーム生成内容

この節では、アプリフレーム生成ツールが実際にどのようにファイルを作成しているかを説明します。

この節で説明している生成は、アプリフレーム生成ツールで生成を実行した場合に行われます。 生成 (変更・作成) 対象となるプロジェクトは AppliFrame です。

アプリフレームとして作成されるファイルは、すべてモデルフォルダ配下のファイルを基にしています。ほとんどのファイルは、モデルフォルダから単純にコピーされるだけです。

モデルフォルダは、MANDALA.net をインストールしたフォルダの中にある Models というフォルダを指します(これはデフォルトであって、アプリフレーム生成ツールで別の場所を指定することができます)。アプリフレームの元となるファイルは、さらにこの中にある Super というフォルダの中にあります。

以下の説明では、すべてのフォルダはこの Super フォルダを基準にして記述しています。 たとえば、"src フォルダ" というと、下記のフォルダを指します。

(MANDALA.net をフォルダ C:\Mandala9 にインストールした場合の例)
C:\Mandala9\Models\Super\src

(a) スーパークラス群

Super フォルダの直下にあるファイル群です。このフォルダの中には一般ファイルの他にサブフォルダもありますが、この項で説明するのはこの階層にあるファイルのみです。

これらのファイルは、MANDALA.net フッククラスの継承元クラス、すなわちスーパークラスのソースファイルです。ビジネスロジック部品生成で作成されるフッククラスのうちのいくらかは、ここにあるクラスを継承したものになります。

(b) データベースユーティリティクラス群

Super フォルダ中の Data サブフォルダにあるファイル群です。これらのファイルは、リレーショナルデータベースにアクセスするためのクラスソースファイルです。

(c) フォーム部品クラス群

Super フォルダ中の Forms サブフォルダにあるファイル群です。これらのファイルは、MANDALA.net を使用してアプリケーションを開発する際に便利なダイアログボックスなどのフォームクラスソースファイルです。

(d) 汎用クラス群

Super フォルダ中の Misc サブフォルダにあるファイル群です。これらのファイルは、一般的なアプリケーション開発に利用できるクラスや、他のカテゴリには分類されないクラスのソースファイルです。

(e) 画面フックのスーパークラス

src フォルダにあるファイル群です。これらのファイルは、ビジネスロジック部品生成で作られる画面フッククラスのスーパークラスになっています。ファイル名およびソースコードの一部分はマクロとなっており、アプリフレーム生成ツールにより実際の内容が展開されます。

アプリフレーム生成ツールで指定したデータベースアクセスのパラメタはこのファイルを基に作られる画面フックのスーパークラスが保持していますので、これらの値を書き換えたり、パラメタの調整を行う場合は、ここから作られたファイルの内容を編集してください。

(3) ビジネスロジック部品の生成内容

ここまでに述べたアプリフレーム生成に加え、ビジネスロジック部品生成ツールではどのような生成が行われるかを説明します。

この節で説明している生成は、ビジネスロジック部品生成ツールで生成を実行した場合に行われます。生成 (変更・作成) 対象となるプロジェクトは アプリケーション (フォーム) を含むプロジェクトです。

まず、アプリフレーム生成の場合と同じように、Models フォルダが参照されます。ビジネスロジック部品は、このフォルダ (およびその配下のサブフォルダ) にあるファイルを基に、入力されたパラメタを展開することで実際に動作するフッククラスを構築していきます。

この基になるファイルのことを、弊社ではモデルファイル、またはモデルと呼んでいます。

(a) フォーム用モデルファイル

Model ファイルにあるプログラミング言語ファイル (.vb, .cs など) がこれになります。これらのファイルは、ビジネスロジック部品の画面フック指定の候補一覧に表示されます。画面フッククラスは、これらのファイルをひな型として生成されます。

新しい画面フッククラス用モデルを作成する場合、このフォルダに配置してください。

(b) 項目用モデルファイル

このフォルダ、およびサブフォルダには、項目用フッククラスのひな型になるモデルファイルが配置されています。ビジネスロジック部品生成ツールの項目フッククラス生成候補一覧には、このフォルダのファイルが表示されます。

(c) モデル編集用ソリューション群

(a) と同じ Models フォルダには、いくつかのソリューションファイルと Visual Basic 用 プロジェクトファイル、C# 用プロジェクトファイルがあります。これらは、新しくモデルを開発したり、既存のモデルを編集したりする場合に使用することができます。単にソースファイルを編集するのではなく、ソリューションを通して編集することにより、文法ミスなどのないモデルファイルを作成するのが容易になります。

それぞれのソリューションについて解説します。

ModelVb.sln
VB 用のモデルファイルを編集するためのソリューションファイルです。
ModelCs.sln
C# 用のモデルファイルを編集するためのソリューションファイルです。
SuperModelVb.sln
VB 用のアプリフレームひな型を編集するためのソリューションファイルです。
SuperModelCs.sln
C# 用のアプリフレームひな型を編集するためのソリューションファイルです。

コードアシスト リファレンス 第 8 章