問題タブ [model-driven-development]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mda - 実際のアプリケーションでの MDSD/MDA の成功事例はありますか?
私は現在、テスト駆動開発の支持者として、モデル駆動ソフトウェア開発 (MDSD) / モデル駆動アーキテクチャ (MDA) の支持者と競争しなければならない状況に直面しています。
私の意見では、コード生成はツールボックスの貴重なツールであり、必要に応じてテンプレートと自動化を多用しています。また、内部の仕組みを理解したり、ホワイト ボードでアーキテクチャについて話し合ったりするのに役立つと思われる場合は、UML で図を作成します。ただし、UML を使用してソフトウェアを作成すること (コードのスケルトンだけでなく、ステートチャートとシーケンス図を作成して作業コードを作成すること) が、多層アプリケーション (データベース層、ビジネス/ドメイン層、Gui、場合によっては分散型) にとってより効率的であるとは思えません。MDSD に関して言えば、CASE ツーリングはもはや単なるツールではなくなったように思えますが、それは満足すべきものです。
これらすべてのことから、実現した実世界のアプリケーションのサクセス ストーリーがあったかどうか疑問に思います (成功とは、予算内で製品が時間内に展開され、バグがほとんどなく、ソフトウェアの一部が後で再利用されたということです)。この基準は、厳格なモデル主導のアプローチを使用して開発されました。
- オブジェクト管理グループ (OMG) や MDSD/MDA/SOA/ に関連するコンサルタントとは何の関係もありません。
- アプリケーションはビジネス プロセス モデリングとは関係なく、CASE ツール自体ではありません。
- アプリケーションはエンドユーザーによって積極的に使用されています
- 生のテーブル値を表示するだけでなく、一般的な MDA/MDSD の例 (「コーヒー マシン、信号機、食器洗い機をモデル化する方法」) の 1 つではないユーザー インターフェイスを含む、少なくとも 3 つの層があります。
c# - リバースエンジニアリング/SQLサーバーテーブルからのC#インターフェイスの作成
SQLサーバーデータベースをポイントしてスキーマを読み取り、テーブルからc#インターフェイスクラスを生成するツールの方法を知っている人はいますか?
たとえば、「Name」列、「Address」列、「Phone」列を持つ「Customers」というテーブルがあるとすると、文字列Name{get;set;}文字列Address{get ;set;}およびintPhone{get; set;}
「不完全な」コードジェネレーターを使用していますが、これらのインターフェイスは生成されません。
java - Java+Playframeworkで使用するUMLモデリングツール
PlayFrameworkを使用するJavaアプリケーションの設計に使用できる優れたモデリングツールを探しています。考慮事項:
- Playアプリのスケルトン用の有効なJavaコードを生成できる必要があります
- Javaコードをラウンドトリップし、モデルを適切に更新できる必要があります
- あまり面倒なことではありません-目的のない複雑な図の連なりを生成したくありません。私の目標は、頭の中にあるアプリのデザインをすばやくモデル化し、[生成]をクリックして、チームのメンバーがJavaコードをスタブアウトし、入力を開始できるようにすることです。
- コストは深刻な問題ではありません。
- Eclipseの統合は大きなプラスです
- 学習曲線/学習するための優れたリソースの可用性は重要な考慮事項です
そのようなモデリングツールは存在しますか?今ビジュアルパラダイムで遊んでいます。これをやりたいと思って、盲目の路地を下っていくのでしょうか?敏捷性などに焦点を当てたモデリングなどがやや不利になっていることは知っていますが、これはa)アプリの動作を想定した方法で作業するすべての人に説明しようとする、b)手動で行うよりもはるかに速いようです。大量の定型コードを書く。
functional-programming - 関数型プログラミングのためのソフトウェア工学の方法論はありますか?
今日教えられているソフトウェア エンジニアリングは、オブジェクト指向プログラミングと「自然な」オブジェクト指向の世界観に完全に焦点を当てています。ドメイン モデルをクラス モデルに変換する方法を説明する詳細な方法論があり、いくつかのステップと、ユース ケース図やクラス図などの多くの (UML) 成果物があります。多くのプログラマーはこのアプローチを取り入れており、オブジェクト指向アプリケーションをゼロから設計する方法について良い考えを持っています。
新しい誇大宣伝は関数型プログラミングであり、多くの本やチュートリアルで教えられています。しかし、関数型ソフトウェア エンジニアリングはどうでしょうか。Lisp と Clojure について読んでいるときに、次の 2 つの興味深い意見に出くわしました。
関数型プログラムは、トップダウンではなくボトムアップで開発されることが多い ('On Lisp', Paul Graham)
関数型プログラマーは、OO プログラマーがオブジェクト/クラスを使用するマップを使用します (「Clojure for Java Programmers」、Rich Hickley による講演)。
では、Lisp や Clojure などの関数型アプリケーションの体系的な (モデルベースの?) 設計の方法論は何でしょうか? 一般的な手順、使用するアーティファクト、それらを問題空間からソリューション空間にマッピングするにはどうすればよいですか?
formal-methods - Alloy の述語の問題
したがって、Alloy には次のコードがあります。
しかし、これはキューを含むインスタンスを生成しません。なぜだろうか。ノードを持つインスタンスのみが表示されます。同等の述語を試しました
しかし、出力は同じです。
何か不足していますか?
haskell - モデル駆動型ソフトウェア開発 vs. Haskell
モデル駆動型 SW 開発 (MDSD) に関する (ドイツ語の) Wiki 記事を読んでいるだけです。ウィキ定義の要約:
- MDSD は DRY 原則に関するものです (繰り返さないでください)
- MDSD は、DSL (ドメイン固有言語) とジェネレーターの設計に関するものです。
- MDSD を使用すると、(それぞれの DSL をより高いレベルで抽象化することにより) 問題をより簡潔に説明できます。
私は高階関数型プログラミングを知っていて使用しているので、私の実際の質問は次のとおりです。MDSD は、高階関数型プログラミングが提供する強力な機能 (の一部) を、本質的に欠けているプログラミング言語/パラダイムに注入しようとする絶望的な試みにすぎないのでしょうか?それらの機能は?
(または、私は誤解していましたか? MDSD を使用して高階関数型プログラミングを実質的にサポートすることさえできたのでしょうか?)
predicate - 合金の事実両方の特性ではない
私はALLOYにコードを持っており、レストランの予約システムを実行しようとしています。このシグニチャとそれらの間の関係があります。
私は朝食のためにそれが両方ではなく予約または無料であることができて、そして昼食と夕食で同じことを何か考えがあるという事実を置きたいですか?
eclipse-emf - モデルがJavaクラスを参照できるようにするEcoreメタモデルを作成できますか?
クラスのリストを「実行」するために使用するように設計された、次のようなEcoreメタモデルを設計するとします。
そして、、、、およびという名前PrintsHello
のクラスを持つJavaプロジェクトがあると仮定します。PrintsSeparator
PrintsWorld
次に、次のようなモデルを作成できるようにしたいと思います。
モデルにJavaプロジェクトを含め、そのクラスをモデル参照の選択肢として認識できるようにしたい(モデルが含まれているのと同じプロジェクトに同じ場所に配置されている可能性があります)。
これは可能ですか?
struts2 - Struts2-ModelDrivenの実装-モデルのプロパティにアクセスするインターセプターを作成します
私はStruts2に比較的慣れていません。開発のオーバーヘッドを減らすためにModelDrivenの使用を開始しました。アクションに到達する前にプロパティを変更するためのインターフェイスを作成したかったのですが、モデルのModelDrivenを実装するクラスのプロパティにアクセスする方法がわかりません。
validate()のようなものが、実際のアクションクラスでどのように機能するかを確認できます。とにかくサービスの背後にあるロジックをカプセル化するように設計を変更しましたが、それでもこれが可能かどうかを知りたいと思います。
私たちはすべてをajax/jsonで行っているので、モデル駆動型が非常に役立つことがわかりました-しかし、より良い代替手段があるかどうかはわかりません!
編集-コード例:
メール本文で使用するテンプレート内のメッセージをメッセージに置き換えようとしています。
このようなメールモデル
email.messageの代わりにインターセプタープリプロセッサーが欲しいのですが。このように見えるはずですが、action.getMessage/setMessageは使用できません。
django - Django adminのようにモデルから自動的にビューを作成する方法は?
私は Django を使い始めており、モデルからビューを自動的に作成できることに本当に感銘を受けています。ですから、他の Web フレームワークにそのような機能があるかどうか知りたいです。RoR のスキャフォールディングについては知っていますが、関連するモデルを変更する場合にビューを手動で変更する必要があるため、これはまったく同じではありません。