私は、既製の優れた代替品がない場合に、独自のビジネス データ アプリケーションを作成する会社にいます。ほとんどの場合、それは - ログイン画面 - ほとんどが SQL Server テーブルの視覚化であるいくつかの画面 - いくつかのレポートです。
以前は、MS Access を使用していました。これらは正確には最も優れたコーダーではありませんが、ほとんどの場合、データベースを構築する方法と UI に必要なものを理解しています。
アプリに突っ込んで使い始めることができる、一般的なログイン画面、メニュー画面などが必要です。これにより、開発速度と保守性が向上します。
もちろん、これを行う方法は複数あり、問題の核心はデータ アクセスにあるようです。オプションは次のとおりです。
1)ASP.NETのビデオのようなGUIデータセット/テーブルアダプターは、その方法を示しています。私たちの何人かはこれをたくさんやっています。開発速度に適しています。気付かないうちにデータ接続が変更されることがあります。巨大なメソッド シグネチャ (挿入または更新のフィールドごとに 1 つのパラメーター) は、エラーが発生しやすくなります。パラメータが正しく検出されないことがあります。動的パラメーター (オプションのフィルターを使用したレポートなど) は非常に困難です。
2) 非常に構造化された n 層スタイル。たとえば、グリッドのデータソースはオブジェクトのコレクションです。プレゼンテーション レイヤーは、オブジェクト A の静的メソッドを呼び出します。このメソッドは、データベースから返される行ごとに A をインスタンス化するデータ アクセス レイヤー メソッドを呼び出します。A には、テーブル内のすべてのフィールドの get/set メソッド、内部変数、およびコンストラクター変数が必要です。各フィールドは何度も入力されます。何にも縛られているものは何もありません。これほど単純なアプリにはやり過ぎの可能性があります。
3) 汎用テーブルは、フィールドのリストをループして UPDATE ステートメントと INSERT ステートメントを動的に作成する汎用関数ですべてを駆動します。選択は主に SELECT * タイプのものです。急速な開発ですが、強力なタイピングの欠如は私を怖がらせます. SQL インジェクションの地雷はどこにでもあるように見えますが、それを避けるために必要なのは引用符を 2 倍にすることだけだと確信しています。
他にもオプションがあるはずですが、それらが何であるかはわかりません。私/私たちに何か提案はありますか?