(小さな) モデルがあり、それを永続化する必要があり、そのための UI (Web、デスクトップ、モバイル、前者の一部、すべて) が必要です。
これは非常に反復的なプロセスであるため、POJO、OR マッパー、UI のコーディングを手作業で行っていることに疑問を抱かざるを得ません (ほとんどの UI "デザイナー" は継承についてさえ知らず、すべてをビルドする必要があるため)。最初から複数のフィールドがある OK/キャンセル ダイアログ)。RADツール/プラットフォームはそれを修正することを約束していますが、私はまだ実際のものを見たことがありません. この wiki のアイデアは、数分でアイデアを具体化し、そこから構築できるようにするすべてのツールを収集することです。シンプルなこと (モデルのシンプルな UI の作成やデータベースへの保存など) はシンプルであるべきです。かなり複雑なオブジェクトをダイアログにアタッチして編集するには、1 行以下のコードで済みます ;)
ここで課題が発生します。たとえば、8 時間以内に小さなアプリを構築できる RAD ツールはどれでしょうか。何ができるべきかを理解するために、仕様は次のとおりです。
「知識」ノードがあります。このような各ノードには、名前と長い説明が添付されています (単一行および複数行の文字列)。
各ナレッジ ノードは、任意の数のナレッジ ノードを子として持つことができます (1:* 並べ替えられた親子関係)。子ノードは順序を維持する必要があります (つまり、セットではなくリストを使用します)
各ナレッジ ノードには任意の数のタグを付けることができます (1:* 異なるタイプ間の順序付けされていない関係)。
任意の 2 つのナレッジ ノードを任意の数の関係 (n:m 関係) で接続できます。
少しの労力で、XML から、または XML として、およびデータベースから、またはデータベース内にモデルをロード/保存できるはずです。
ユーザーは今日、元に戻す/やり直すことを期待しています
UI は、ナレッジ ノードの作成、並べ替え、および削除という標準的な操作を提供する必要があります。並べ替えにはドラッグ アンド ドロップを使用する必要があります。ナレッジ ノードからタグを追加/削除できるようにする必要があります。リレーションによって 2 つのナレッジ ノードを接続する簡単な方法が必要です (たとえば、特別なモードで 1 つのノードを別のノードにドラッグするなど)。
UI では、特定のタグまたは関係を持つノードを検索できるようにする必要があります。ボーナス ポイントについては、関係グラフをナビゲートする簡単な方法を提供する必要があります。
挑戦することはありますか?いつものように、OSSが優先されます。
背景: 現在、25 年以上にわたってソフトウェアを開発しています。それでも、この単純なアプリケーションは、これまでに遭遇したどの言語でもコーディングするのに、数か月ではないにしても数週間かかります: Groovy、Java、Python、Tcl/Tk、Grails、OpenOffice、MS Access、TreeLine、[TurboGears][10]、 [思考特性][11]、.net。
候補に関するいくつかのフィードバック。要点を 1 つの文で強調しようとしていることに注意してください。そのため、次のセクションは控えめに説明してください。
Groovy Nice 言語、コンパクトなコード。閉じていますが、UI 部門が欠けています。彼らはそれに取り組んでいますが、そこにはありません。永続性のために、すぐに使用できる Java シリアライゼーションのみ。
Java Java は 10 年前に登場したときは素晴らしかったですが、それほど進化していません。膨大なライブラリ セットを備えた老朽化した言語ですが、作業を完了するにはあまりにも多くのコードが必要であり、コードの各行を記述するのに時間がかかります。
Pythonは必要なものをほぼすべて手に入れましたが、何らかの理由で、たとえば Java ほど主流になることはありませんでした。SQLAlchemyを使用したクールな OR マッパーであるPyQt4で設定された優れた UI を取得しましたが、それでもスロットルを全速力で動かして先に進む様子は見られません。単体テストが登場して初めて、より大きなプロジェクトを作成できるようになりました。タスクのレベルが低すぎます。
Tcl/Tk素晴らしいウィジェット セットですが、コード サイズが特定のポイントを超えて大きくなると、言語が機能しなくなります。今ではその年齢を示しています。
OpenOffice 2.0 以降、OO には組み込みのデータベースと「Access のような」ツールが付属しています。それはまだ始まったばかりですが、彼らはそこにたどり着くでしょう...最終的には. UI で親子関係を指定できないため、親子関係を処理できませんでした (バグ を参照)。3.1 で修正されました。3.1 では、モデルを作成できますが、UI の作成にはまだ多くの時間がかかります。
MS Access必要なものはほとんどありますが、UI オプションはかなり限られています。イライラします。
TreeLineリレーションを実装する方法がなく、他のほとんどのユース ケースでは制限が多すぎます (それ以外のことはできません)。
.net主に Windows のみであるため、これについては経験がありません。私はこれがかなり近いと思いますが、それに直面しましょう: 人類の 4 分の 1 をロックアウトするポイントは何ですか?