メインコンテンツへスキップ

拡張性 Mendix - サードパーティのサービス

拡張性

どのように機能を拡張できますか? Mendix プラットホーム?

この Mendix ランタイムはさまざまな方法で拡張できます。以下のセクションでは、 Mendix コネクタ キット、Java アクション、JavaScript ウィジェット、Java リクエスト ハンドラー、およびデータ ストレージ。

この Mendix IDE Studio Proは、拡張APIを活用して拡張することもできます。拡張APIについては、以下を参照してください。 Studio Proの拡張性下記。

Java アクション & コネクタ キット

Java アクションを使用すると、任意のマイクロフローで使用できる再利用可能なマイクロフロー アクティビティを作成できます。アプリケーション固有の Java アクションを作成できるほか、他のプロジェクトや他の開発者が再利用できるようにモジュールにバンドルすることもできます。

Java アクションは外部システムとの統合によく使用されますが (「コネクタ」という用語の由来)、統合ユースケースに限定されるわけではありません。実際、Java では、既存の (オープンソースの) Java ライブラリのほとんどを使用することを含め、考えられるあらゆることを行うことができます。これにより、必要なあらゆる種類の機能のプラグインを提供できます。

チームメンバーや外部のユーザーがカスタムJavaアクションを簡単に使用できるように、カスタムJavaアクションはマイクロフローエディタエクスペリエンスに完全に統合されています。 Mendix Studio Pro その他 Mendix 開発者は、標準のマイクロフロー アクティビティとカスタム Java アクションの違いを認識しません。

以下の画像は、 マイクロフローアクションの構築方法 Mendix コネクタキット 会場は Mendix Studio Proの使い方ご覧のとおり、 リスト内のオブジェクトを結合する カスタム アクションは、アイコンとユーザー フレンドリなパラメータを備えた他のマイクロフロー アクティビティのように見えます。

すべてのカスタムJavaアクションはマイクロフローツールボックスで利用できるため、技術者以外のユーザーでも簡単に発見して使用できます。 Mendix 実際、ユーザーは、カスタムJavaアクションとして実装されていることを知らずに、ツールボックスからマイクロフローにアクティビティをドラッグするだけで済みます。ツールボックスでJavaアクションを表示するには、 マイクロフローアクションとして公開 このビデオで説明されているように、チェックボックスをオンにします。

Javaアクション実装内では、 Mendix ランタイム API 緊密な統合を実現するために Mendix オブジェクトと Java コード。

 

カスタムJavaアクションの使用に関する詳細については、こちらをご覧ください。 Mendix ドキュメンテーション:

プラグイン可能なウィジェット

あなたは拡張することができます フロントエンド あなたの Mendix JavaScriptまたはTypeScriptをベースにしたカスタムウィジェットを構築することで、アプリケーションを開発できます。詳細については、 プラグイン可能なウィジェット のセクション フロントエンド.

プラグ可能なアクション

カスタムアプリケーションロジックを作成するには、 Mendix 開発者はカスタムナノフローアクションを構築できます。これらのプラグ可能なナノフローアクション(Studio ProではJavaScriptアクションと呼ばれます)は、デバイスの機能を活用したり、クライアントで任意のタイプのロジックを実行したりするために使用できます。詳細については、 プラグ可能なナノフローアクション のセクション フロントエンド.

Java リクエスト ハンドラ

JavaリクエストハンドラAPIを使用すると、JavaでカスタムHTTPエンドポイント実装を作成できます。リクエストハンドラは基本的に、HTTPリクエストを受信し、入力を使用して、呼び出し元に応答を送信するJavaメソッドです。これは、カスタム認証、特定のページへのディープリンク、カスタムプロトコル実装など、多くの状況で役立ちます。リクエストハンドラの実装はJavaに限定されず、次のように実行できます。 Mendix Java 実装からのマイクロフローとアクティビティ。

ネイティブ REST 公開が利用可能になったことで、カスタム Java リクエスト ハンドラーの必要性が大幅に減少したことに注意してください。

データストレージ

サポートされているすべてのクエリ言語 Mendix Java API を通じて使用できます。これには、XPath、OQL、SQL が含まれます。

XPath と OQL はどちらも移植可能で、どのデータベースを使用しても動作は同じです。SQL を使用すると、選択したデータベースのすべての機能を使用できます。このシナリオの 1 つは、データベース固有のインデックスを使用してクエリのパフォーマンスを向上させることです。

あなたが使用することができます MendixのJava APIを登録する エンティティイベントリスナー すべてのエンティティに対して。これを使用して、監査情報を抽出したり、すべてのデータ変更を外部システムにリアルタイムでエクスポートしたりできます。

詳細は、こちらを参照してください。 Mendix ドキュメンテーション:

再利用可能なコネクタをサードパーティのサービスに提供するにはどうすればよいですか?

汎用コネクタは他の開発者や企業と簡単に共有できます。コネクタモジュールをエクスポートできます。 Mendix Studio Proで作成したファイルは他のアプリにインポートできます Mendix アプリプロジェクト。コネクタモジュールは、 Mendix マーケットプレイス – 誰でも使用できるようにパブリックマーケットプレイスに、または社内の開発者だけが再利用できるように会社のプライベートマーケットプレイスにアップロードします。詳細については、 マーケットプレイスのコンテンツを共有する方法 会場は Mendix ポータルガイド.

コネクタには、マイクロフロー アクティビティ、ロジック、ドメイン モデル、Java コード、必要な Java ライブラリなど、コネクタの使用に必要なものがすべて含まれています。この複雑さは、コネクタのユーザーには見えません。コネクタを使用するには、カスタム マイクロフロー アクティビティをツールボックスから任意のマイクロフローにドラッグするだけです。

コネクタの例を次に示します。

 

Studio Proの拡張性

設計時の拡張性に加えて、 Mendix また、IDE拡張性も提供しており、Studio Proを拡張することができます。 Mendix IDE

拡張 API を使用すると、C# や React、Typescript などの Web テクノロジーを使用して Studio Pro を拡張できます。この API を使用すると、開発者エクスペリエンスに役立つ機能で Studio Pro の機能を拡張できるだけでなく、カスタマイズされたエディターやドメイン固有言語を使用して設計時の言語を拡張することもできます。

API は Studio Pro で開いているアプリへのアクセスを提供し、設計時にあらゆる操作を実行できるようにします。

ツールの機能 Mendix 統合しますか?

Mendix 開発者が使用するさまざまなツールとのシームレスな統合を提供します。

  • 選択することによって、 Eclipse へのデプロイ in Mendix Studio Pro、あなたの Mendix アプリプロジェクトはEclipseと互換性を持つようになり、Eclipseからアプリを実行およびデバッグできるようになります。また、Javaソースコードにアクセスして、カスタムJavaアクションを実装することもできます。詳細については、 Mendix のドキュメント  Eclipseの使用 および Javaアクションをデバッグする方法.
  • その他にもたくさんのグーグルの Mendix 開発者はIntelliJ IDEAを使用します。IntelliJではEclipseプロジェクトをインポートできるので、 Eclipse へのデプロイ in Mendix Studio Pro を使用すると、すべてのカスタム Java アクションのコーディングを IntelliJ で実行することもできます。
  • ウィジェット開発者は、 プラグイン可能なウィジェット.

オープンスタンダードがもたらすもの Mendix サポート?

Mendix プラットフォームとプラットフォーム上に構築されたアプリケーションのシームレスな統合をサポートするとともに、設計成果物の交換をサポートするために、オープン スタンダードを積極的に採用しています。

これは、オープンスタンダードとテクノロジーの簡単な概要です。 Mendix プラットフォーム:

  • アプリケーション データは、多数の主流のリレーショナル データベース管理システムに保存できます。 Mendix ドメイン モデルとデータを定義および操作するために SQL 標準を使用します。長年にわたり、SQL は柔軟で多目的、そして将来性のあるデータ言語であることが証明されてきました。そのため、NoSQL データベースでも、データを取得するデフォルトの方法として SQL が採用されています。
  • この Mendix ランタイムはScalaとJavaを使用して実装され、Java仮想マシン(JVM)上で実行されます。SQLと同様に、JVMは柔軟で多目的、将来性のあるプラットフォームを提供します。Javaを使用すると、 Mendix 多数のシステムおよびクラウド プラットフォーム上のプラットフォーム。JVM ランタイムは、多数のプログラミング言語に対して柔軟です。これにより、Java のような実績のある言語と Scala のような革新的な言語の機能を組み合わせることができます。
  • Mendix Web サービス、SOAP、WSDL、XML スキーマ、REST、JSON、Swagger、OpenAPI、OData など、統合に関連する多くのオープン スタンダードのサポートを提供します。
  • フロントエンドでは、 Mendix 多数のオープン スタンダードと、HTML5、CSS3、React を使用してレンダリングされる Web ページなどの多数の事実上の標準をサポートしています。
  • Mendix アジャイル手法を通じてソフトウェアイノベーション管理のベストプラクティスを採用しています。 Mendix プラットフォームは、最も一般的に使用されるアジャイル手法であるスクラムに必要なツールを提供し、 Mendix アプリケーション プロジェクト。
  • ホスティングについては、 Mendix Linux、Docker、Kubernetes、Cloud Foundry などのオープンかつ事実上のホスティング テクノロジーを採用しています。

言語を選択してください