データとユーザーインターフェイスの間のブリッジとしてのデータモデル

プロジェクト「データモデル」(fishbolt.model)。 アーキテクチャの中核は、概念的に新しいデータモデルです。 このモデルは、Plain Old Java Object(POJO)、Enterprise JavaBeans(EJB)などのJavaアプリケーションでデータ構造を整理するための既存のアプローチに代わるものです。 既存のアプローチと比較したモデルの利点は、新しい機能の追加または既存の機能の変更に関してより柔軟であり、ソフトウェアによるデータ構造の分析の可能性に関してより有益であり、構造の変更に関連するほとんどのエラーの識別も提供することです実行段階ではなく、コンパイル段階でのデータ。



プロジェクト「データモデルの拡張」(fishbolt.model.ext)。 効果的なモデル拡張メカニズムにより、モデルに新しい機能を簡単に追加できます。 Fishboltは、以下を含む多くの便利なモデル拡張機能を提供します。



*モデル内のイベントを追跡および処理するためのメカニズム

*ユーザーが入力した値をチェック(検証)するメカニズム

*データソートメカニズムなど



プロジェクト「モデルプロバイダー」(fishbolt.model.provider)。 このモデルは、さまざまなデータソースと統合する機能を提供します。 モデルプロバイダーは、データソースとの統合を担当します。 モデルプロバイダーは抽象化です。 特定のソースとの統合は、プロバイダーの特定の実装によって提供されます。 Fishboltは2つのプロバイダー実装を提供します。



*プロジェクト「メモリ内のモデルの実装」(fishbolt.model.memory)-RAM内のデータストレージを提供します。 プログラムが完了すると、このデータは完全に失われます。 この実装は、開発されたソフトウェアのテストに便利です。

*プロジェクト「Hibernateを使用したモデルの実装」(fishbolt.model.hibernate)-Hibernateテクノロジーを介したデータベースとの相互作用を提供します。



Hibernateとの統合を確実にするために、2つの(補助)プロジェクトが設計されています。



*プロジェクト「パターンコマンドとHibernate」(fishbolt.hibernate)-パターンの助けを借りて、チームはHibernateセッションとトランザクションの管理をカプセル化するため、fishbolt.hibernateライブラリのクライアントはこれらのことを心配する必要がなくなります。 fishbolt.hibernateライブラリは、Hibernateテクノロジーを使用するJavaアプリケーションのfishbolt.hibernate.modelデータモデルに関係なく使用できます。

*プロジェクト「モデル内のHibernateアノテーション」(fishbolt.model.hibernate.annotations)-データモデルのオブジェクト内のHibernateアノテーションのサポートを提供します。



モデルとその拡張の基になっているさまざまなアイデアとアプローチは、「アダプター」、「チーム」、「リスナー」などのよく知られたデザインパターン、および「フラグのセット」、「マネージャー」、「値の代表。」 これらのパターンの実装は、General Patternsプロジェクト(fishbolt.common)に含まれています。



プレゼンテーション層では、Fishboltはさまざまなテクノロジーとプラットフォームとのモデル統合を提供します。



Eclipseプラットフォーム Eclipse Platform Integrationプラグインプロジェクト(fishbolt.model.eclipse)を使用すると、Eclipseプラットフォームが提供するユーザーインターフェイスコンポーネントを使用して、アプリケーションデータモデルのユーザーインターフェイスをすばやく簡単に開発できます。 このプラグインは、標準ウィジェットツールキットの単純なコンポーネント(入力フィールド、ドロップダウンリストなど)とJFaceセットの複雑なコンポーネント(エディター、ウィザード、テーブル、ツリーなど)の両方をサポートしています。



fishbolt.model.eclipseプラグインに加えて、Fishboltは、Eclipseプラットフォームでマルチレベルアプリケーションを構築するためのフレームワークを形成するいくつかのEclipseプラグインを提供します。 これらのプラグインの詳細については、「Eclipseプラットフォームとの統合」を参照してください。



FreeMarkerテンプレート言語。 プロジェクト「FreeMarkerテンプレート言語との統合」(fishbolt.model.freemarker)は、FreeMarkerテンプレートを使用してモデルに含まれるデータに基づいてレポートを生成する機能を提供します。



Fishboltは現在、Netwing(Swingライブラリに基づく)およびWebアプリケーションのアプリケーションデータモデルのユーザーインターフェイスの構築を大幅に簡素化するプロジェクトを開発しています。



fishbolt.ruで詳細をご覧ください



All Articles