データベースアプリケーションのためのRAD tools

(2017.7.17) 更新。

業務アプリケーションは、データベースを操作 (データ入力、データ取得) するようなものが多い。

このようなデータベースアプリケーションの開発に使える, RAD (Rapid Application Development) toolを探してみた。

PostgreSQL の管理についてはこちら; PostgreSQLの管理

デスクトップアプリケーションの開発

ごく小規模な開発だと Microsoft Access がしばしば使われる (ていた)。その代替になるかもしれないようなもの。

移行方法が用意されているものや、簡便なGUI builder, デスクトップアプリケーション開発環境。

(2017.7) Microsoft Access は、VBA の構文が VB.NET より劣ったり、ライブラリが独自だったり、はっきり開発しにくい。Access を使いつづけるよりかは, C# / VB.NET で普通に.NETアプリケーションとして開発したほうが、結局はメンテナンスしやすいと思う。リポーティング (帳票) のところがネックになるが。

Embarcadero Delphi

現役, 本物。

最新は 2017年3月にリリースされた Delphi 10.2 Tokyo. 過去の資産のために, Delphi 7 (2002年) 以降のバージョンもライセンスされる (料金に含まれる)。

エディションは Starter, Pro, Enterprise, および Architect. Delphi 10.2 Starter Edition は無償。

再コンパイルで, Windows, macOS, iOS, Android および Linux 用バイナリを生成できる。

Clone としては Lazarus がある。

Kexi (Linux版)

Microsoft Access または FileMaker に似た, データベースアプリケーションの開発ツール。KDEベース。

何となく, Calligra Suite の一部として扱われている。

最新は 2017年3月にリリースされた Kexi 3.0.1. Fedora 25 Linux には v2.9.11 が収録されている (calligra-kexi パッケージ). Fedora 26も同じバージョン。

Glom (Linux版)

Glomは, non-programming でデータベースアプリケーションを開発するためのシステム。目標は FileMaker Pro の代替で, データベースを分離する。

GTK+ベース, DBMSは PostgreSQL を使う。

最新は 2016年6月のバージョン1.31.6. Fedora 25 Linux には v1.30.4 が収録されている。細々と開発が続いている感じ。ただ, Windows 版は 2010年を最後に提供されなくなった。

今は, フレームワークとして libgtkmm-3.0 (>= 3.18.0) を利用している。

LibreOffice Base

LibreOfficeスイートの、データベースアプリケーション開発ソフトウェア。Microsoft Access の代替。

日本語ドキュメント:

Webアプリケーション開発環境

Ruby on Rails などは措いておいて、ある程度 non-programming でアプリケーション開発するようなもの。

アプリケーションの配備がクラウドだと、当然、データベースもクラウド上に置くことになる。

自動生成されたコードがカスタマイズできるかどうか。

Oracle Application Express (Oracle APEX)

DBMSはOracle 専用。

Webブラウザのみを使用したアプリケーションの構築

Application Expressは、データベースを中心とした、応答性の高い優れたアプリケーションをWebブラウザのみで設計、開発、デプロイできるツールです。この完全にサポートされた、Oracle Databaseの無償の機能を活用する方法をご覧ください。

最新は2017年3月のリリース5.1.1.

ドキュメントで, Oracle Formsアプリケーションのコンバートについて1章まるまる割かれている。

Microsoft Accessアプリケーションからのマイグレーションについてはこちら;

WaveMaker

試していない。 WaveMaker - Rapid Application Development for Web & Mobile Apps

Professional: 開発者当たり1ヶ月当たり249 US$.

OutSystems

かなり評判が高い。

高速開発ツールのOutSystemsが正式発表、BlueMemeが年額360万円〜で提供 | IT Leaders

とはいえ冒頭で触れたSapiensや GeneXus といったツールとの違いは、あまり明解ではない。こうしたツールも新規開発以上に、保守や拡張に利点があると謳っているだからだ。そこで同氏に「競合はどこか」と聞いたところ、「GeneXusは南米と日本では一部競合するが、それ以外では名前を聞かない。Sapiensは競合したことがない(本誌注:聞いたことがない、というニュアンスだった)。最も競合するのはSalesforceの Force.com だ」という。
Edition 価格
Free 永年無償 (トライアルではない)
One 2,100 US$/month
Enterprise 4,600 US$/month

Freeで実際に試してみて、という感じか。

Zoho Creator

Force.com (Salesforce)

GeneXus

2017年現在の最新は GeneXus 15.

もう昔になるが、委託開発で、委託先が GeneXus を使ったことがある。そのときは、プロダクトの問題か委託先の能力か、なんとも微妙な出来栄えになってしまった。あまりいい印象はない。(個人の感想です。)

Wagby

Wagby (ワグビィ) は, Web ベースのエンタープライズアプリケーションをノンプログラミングで超高速に開発するツール, ですって。

Wagby - 製品 > 他社製品との比較情報

今も使われ続けているツールがある

CASE ツールが脚光を浴びたのは 1980 年代後半から 90 年代前半です。そのときに登場した GeneXus や Sapiens は現在も使われていますので、消えたわけではありません。当時の CASE ツールは COBOL ベースが多かったですが、例えば GeneXus は GeneXus 言語(いわゆる 4GL) をベースとすることで、製品の寿命を長くすることに成功しています。

WagbyとCASEツールとの違い

当時のCASEの思想から発展させた GeneXus などのツールと、そのあとに登場したWagbyは出発点が異なっています。

Wagbyは「ジェネレーティブ・プログラミング」が原点です。これはアプリケーションに特化した設計情報を使って、"生成的に (ジェネレーティブ)" システム開発を行うというものです。そのため 4GL を用意せず、汎用言語である Java を使います。

Wagbyの最大の特徴は、生成されたソースコードを改変(カスタマイズ)できることです。従来の CASE ツールは生成されたコードに手を入れることができません。また、ソースコード生成型ではなく、実行エンジン型と呼ばれるものもジェネレーティブではないため、一般的に、カスタマイズできる範囲は制限されます。

GeneXus人気だなぁ。

Tryton

これはかなり毛色が違う。業務アプリケーションのテンプレート。

Pythonベースのアプリケーションプラットフォーム。GPLv3でライセンスされ, PostgreSQL をデータベースエンジンとして用いる。

最新は 2017年6月のv4.4.1.

Webサイトでデモ環境もある。そのままでは機能が豊富という感じではないが, 業務アプリケーション開発の出発点として使えるかもしれもい。

すでに終了しているもの

Microsoft LightSwitch

Visual Studio LightSwitch

始まりもしなかった。2016年10月に discontinue することが公表された。 LightSwitch Update | Visual Studio LightSwitch Team Blog

We no longer recommend LightSwitch for your new apps. But we remain committed to fulfilling our vision to significantly raise the productivity bar for building modern LOB applications, which is why Microsoft is aligning efforts behind PowerApps. Microsoft PowerApps is a solution to build custom business applications that enables increased productivity with business apps that are easily created, shared and managed. PowerApps offers a modern, intuitive experience for LOB application development. Learn more about PowerApps.

LightSwitchアプリケーションは, デスクトップ (Silverlightのブラウザ外実行アプリケーション), Web (Silverlight), クラウド上で動作したようです。Silverlight も discontinued になったので、終了は必然。

Bond

(2011.12)

Bondは, Linux / Windows 用のデスクトップアプリケーションを作成するためのRADフレームワーク。GTKベース。

PostgreSQL.

Rekall (Linux版)

KDE用のMicrosoft AccessライクなGUIツール、のようだ。

(2011.12) Webサイトがなくなっている。開発終了.

PgAccess

PgAccessは、Tcl/Tkで書かれた PostgreSQL用のGUIソフトウェアで、Microsoft Accessに似たインターフェイスを提供する。

(2007.2) 開発が停滞している? (2011.12) 2004年で終了していたみたい。

インストール方法:

展開して,

$ tar xzvf pgaccess-0.98.8.20030117.tar.gz
$ cd pgaccess-0.98.8.20030117

インストール.

$ su
# make clean
# make all

OSにインストールされているTcl/Tkのバージョンによっては、日本語の入力ができません。

Tcl/Tkバージョン8.4.xであれば問題なく日本語の入出力ができます。バージョン8.4.xはバージョン8.1以降と高い互換性があるので、そのまま上書きインストールしても大丈夫です。

次の3つのパッケージをインストールします。

  • Tcl
  • Tk
  • tcllib
$ ./configure --prefix=/usr && make
$ su
# make install

それから, 環境変数を設定します。

PGACCESS_HOME=/usr/lib/pgaccess
PGLIB=/usr/local/pgsql/lib