GeneXus を使用する利点の 1つは、さまざまなプラットフォーム (Web インターフェース、ウォッチ、携帯電話、タブレットまたは TV からクラウド サーバー ファームまで) で実行されるアプリケーションを生成できることです。さまざまなプログラミング言語でコードを生成し、アプリケーションデータをさまざまなデータベースに格納します。
環境を使用すると、アプリケーションの特定の実装に関連するすべての情報を設定および格納できます。たとえば、アプリケーションのバックエンドの生成に使用するジェネレーター、フロントエンドの生成に使用するジェネレーター、データベース情報などです。
ナレッジベースを作成すると、既定の環境が作成されます。
[ 新規ナレッジベース ] ダイアログでは、ナレッジベースの名前とパスだけでなく、アプリケーションのバックエンドに対応するコードの生成に使用するプログラミング言語と、データベース構造を作成/変更するプログラムを選択するように求められます (
再編成プログラムと呼ばれます)。残りの環境情報は、そのプロパティを介して構成する必要があります。
ナレッジベースの作成後、 [
KB エクスプローラー ] タブの横にある [
設定 ] タブを選択すると、既定の環境が作成されていることを確認できます:
既定の環境名 (「.NET 環境」、「Java 環境」など) は、 [ Name ] プロパティを編集することで変更できます。同様に、プログラミング言語を変更する場合は、 [ Language ] プロパティで変更します。さまざまな環境のプロパティを設定できます。
環境は次のノードで構成されます:
- バックエンド: アプリケーションサーバー、データベースへのアクセス、サービスに関連するすべてのものを表します。
- フロントエンド: UI に関連するすべてのもの (操作するために表示され、使われるもの) を表し、バックエンドに接続します。生成 (設定) するリソースは、.NET、Java、Angular、Android、Apple です。
- デプロイ: ナレッジベースのバージョンで定義されている Deployment Unit オブジェクトを表します。
バックエンドノードは、次のものを定義します:
- アプリケーションのバックエンドに対応するコードを生成するために使用されるプログラミング言語、およびデータベース構造を作成/変更するためのプログラムです。既定の言語があり (ナレッジベースの作成時に選択されたため、示されている例では .NET です)、特定のシナリオに対してより多くのジェネレーターを定義することができます。詳細については、GeneXus のジェネレーターを参照してください。
- 生成するアプリケーションに対応するデータベースにアクセスするための情報を設定する、既定のデータストアです。ほかのデータストアを作成して外部データベースを読み取ることもできます。
- Services ノードのプロパティを使用して、サービスの処理、ストレージ設定、通知などを構成できます。
アプリケーションのフロントエンドを生成するために使用できるジェネレーターが表示され、このプロパティを使って設定することができます。既定では、次のジェネレーターが表示されます: .NET、Android、および Apple。フロントエンドの
[ Generate Angular ] プロパティを [ Yes ] に設定することで、Angular ジェネレーターを追加できます。
このノードを使用すると、さまざまな
Deployment Unit オブジェクトを定義できます。
各環境には、特定のアプリケーション実装に対応する詳細が格納されます。
KB バージョンノードまたは既定の環境ノードに配置されている新しい環境を定義するには、右クリックして [ 新規環境 ] を選択します。
[ 新規環境 ] ダイアログが開きます。
一度にアクティブにできる環境は 1 つだけです。つまり、アプリケーションの生成、データベースの再編成、および F5 キーを押したときに実行するために使用される環境になります。
既定では、既定の環境がアクティブになっています。
環境をアクティブにするには、その名前 (環境ツリーのルートノード上) を右クリックし、 [ 現在の環境として設定 ] をクリックします。環境がアクティブになると、その名前が太字で強調表示されます。名前の隣にあるアイコンがオレンジの矢印 (「再生」マーク) を表示して、その環境が使用されることを示します。
非アクティブな環境は、太字ではなく通常のフォントで名前が表示され、その環境はデータベースの生成や接続には使用されないことを示します。
環境の各プロパティを変更すると、通常は
すべてをリビルドする必要があります。詳しくは、「
プロパティの変更の適用」を参照してください。