Unifinityは、以下のような特徴を持っています。
一度の開発でマルチOSに展開可能
UnifinityアプリケーションにはOS別の開発が必要ありません。1つのUnifinityアプリケーションを複数のOSで実行できます。これは、Unifinityの実行環境(Unifinity Application Player)がOSごとの差異を吸収するためです。
OSバージョンアップの影響を受けない
Unifinity Application Playerは極力OSに依存せず、独自のエンジン上で動作するように設計されています。このため、OSごとの差異だけでなく、OSのバージョン違いによる影響も最小限に抑えられます。
【参考】ネイティブ言語で開発する場合のOSバージョンアップで考えられる影響
OSがバージョンアップされると、ネイティブ言語で開発されたモバイルアプリは、「一部の機能が動作しなくなった」「期待しない動作を行った」といった不具合が発生することがあります。これは、OSバージョンアップに伴うAPIの廃止や仕様変更など、OSの提供元が公開する技術情報だけでは予測しきれないOS側の不具合に起因します。
このため、モバイルアプリの開発元は、OSのバージョンアップが正式公開される前に新OSでも問題なく動作するようモバイルアプリの動作検証を行う必要があり、負担を強いられています。
ノンプログラミングGUIによるアジャイル開発が可能
シンプルで使いやすいグラフィカルインターフェースにより、直観的な操作でアプリ開発ができます。
Unifinityアプリケーションの処理は、Unifinityの開発環境(Unifinity Studio)がもつ多数の「ロジックコンポーネント」を組み合わせることで設計できます。ノンプログラミングでUnifinityアプリケーションを作成できるため、特定言語のプログラミング知識は不要です。
Unifinityの開発環境にはボタンやテキストボックスなどが用意されています。Unifinityアプリケーションの画面デザインのみを作成するアプリユーザーから引き継いだUnifinityアプリケーションにエンジニアがデータベース処理を組み込むなどの分業も可能です。
【参考】Unifinityコントロールとは
Unifinityにおける画面設計で、ボタンやテキストボックスなど、画面上に配置できるものを指します。
Unifinityアプリケーションを使用するアプリユーザーは、Unifinityコントロールを操作することで、Unifinityアプリケーションが用意する処理の実行や、データの内容の確認・変更ができます。