問題タブ [reusability]
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.
asp.net-mvc - MVC アーキテクチャを再利用します。ASP.NET MVC と .NET Winforms の 2 層の UI があります。
私の質問は抽象的に見えるかもしれませんが、そうでないことを願っています。アプリケーション、ASP.NET MVC サイトを開発し、後でこのアプリケーション用の Winforms クライアントを構築する任務を負ったとします。既存のアプリケーションからどの程度、どのように再利用できるでしょうか?
モデルを定義し、コントローラーとビューを定義しました。それらはすべてうまく機能します。
今、上司は Winforms クライアントを求めてきました。ビュー (ASPX ビュー) だけを再利用するのではなく、モデルとコントローラー (別のアセンブリに配置した場合) を再利用できることを望んでいます。
これはできますか?どのように?
model - MVP とそのバリエーションのプレゼンテーション レイヤーの再利用ストーリーを購入しますか?
単体テストの利点以外に、MVP パターンについて聞いたのは、プレゼンテーション レイヤーの再利用性です。したがって、1 つのプレゼンテーション レイヤーを設計し、それを WinForms (リッチ) と Web に使用します。
私は現在、.NET で Windows フォーム アプリケーションに取り組んでおり、将来的には Web UI を作成する可能性があります。しかし、プレゼンテーション レイヤーと UI レイヤー間の相互作用を設計している場合、この再利用性の概念に苦労する価値があるかどうかは定かではありません。Windows フォーム UI 用に特別に設計された場合はさらに多くの可能性がある場合、可能性のある Web UI のプレゼンテーションを「馬鹿げている」ように感じることがあります。
では、再利用可能なプレゼンテーション レイヤーのメリットを享受している人はどれくらいいるでしょうか? この再利用可能性は現実の世界でうまくいきますか?
asp.net-mvc - ユーザー コントロールのフォームを他のページに移植できるようにする方法
フォームを含むいくつかのページ (ユーザー コントロールのカスタムと同様) で使用されるユーザー コントロールがあります。その機能を保証する方法を考えていました。
最初に、このフォームの値を受け入れる単一のメソッドを持つ単一のコントローラーを用意したいと考えました。私を妨げている唯一のことは、このメソッドが計算などで完了した後、ユーザーコントロールが発生したビューに応じて、他のコントローラーとメソッドに転送する必要があることです。
次に、このユーザーコントロールを持つすべてのコントローラーに、そのコントローラーのデフォルトページに転送する同じ固定メソッドを持たせたいと思いました。これは、固定メソッドに転送するオプションが 1 つだけある場合にのみ機能します (これは現在の場合ですが、明日ではない可能性があります)。
私の提案の1つを機能させるためのきれいな方法はありますか、それともこのことを実現するための他のオプションがありますか?
.net - サーバーベースの再利用 - DLL、GAC、または REST?
同じサーバー上のいくつかの異なるアプリケーション (クライアント) によって使用される機能があります。サービスとしてモデル化でき、バックエンド データベースがあり、一度に使用される機能とデータベースのバージョンは 1 つだけです。
これまで、単純な DLL の再利用を採用しており、機能、その構成ファイル、および依存関係が使用されるすべての場所にデプロイされていました。いくつかの場所で変更を行う必要があるため、機能の新しいバージョンを作成する場合や、新しいクライアントがそれを使用する場合、この方法は苦痛です。
これを行うためのより良い方法があるかどうか疑問に思っており、2 つの代替案を考え出しました。
DLL (および依存関係) を GAC に配置します。問題は、コンポーネントをどのように構成するかです。クライアントは構成に関心がないため、サーバー上のハードコードされたパスに構成ファイルを保存することに傾いています。
機能を内部 (REST ベースの) サービスとして公開します。ファイアウォールを使用して、アクセスを内部クライアントに制限できます。
私たちが見ているように、#1 の長所はパフォーマンスとおそらくセキュリティであるように見えますが、#2 はセットアップがより簡単であると見ることができます.
ここで何か重要なことを見逃していませんか? 誰かが以前に同様の状況にあり、洞察を共有したいですか?
version-control - コード以外のバージョン管理の用途は?
これを見る: http://www.suckless.org/wiki.html . Mercurial に基づくウィキ。コード以外でバージョン管理に使用する方法はありますか? 独自の特定のソリューションをプログラミングする代わりに、内部でバージョン管理ツールを使用する他のプロジェクトはありますか?
reusability - プロジェクトソースまたは公開されたDLL?
コード(たとえば、作成したUtilライブラリ)を再利用する場合、そのプロジェクトをソリューションに追加しますか、それともUtilライブラリからコンパイル/公開されたDLLを使用しますか?
c# - ASP.NET と C#.NET 間でのコンポーネントの再利用
私は .NET の経験がまったくないので、これはばかげた質問のように思えるかもしれません。
ASP.NETで再利用できる.NETを使用して、C#でコンポーネントを構築することは可能ですか? たとえば、アプリケーションを Web に移植したい場合などです。
可能であれば、それらはどの程度移植可能ですか? つまり、GUI はある程度再利用できますか? ベースとして使用する中間形式はありますか、それとも C# コンポーネントをバイナリとして使用する必要がありますか?
ありがとう。
編集:
ご意見ありがとうございます。私は、この問題の設計面、つまり再利用のためにコンポーネントをモデル化する方法に精通しています。しかし、質問の本当の意味は、.NET は ASP と Windows の間でどの程度再利用可能かということであることに気付きました。.NET コンポーネントの特定のパッケージは環境に依存せず、一部はプラットフォーム固有であると言えますか?
xml - XML のフラグメントを再利用できますか (何らかの変数/参照の方法で)。
SLDを使用して、ジオサーバーからの出力のスタイルを設定しています。表示するオブジェクトのタイプがいくつかあります。各タイプには異なるアイコンがありますが、テキストの説明は同じ情報 (データベース内のテキスト フィールド) から生成されます。画像名に変数を使用できないため、object_typeを画像名として使用できません(または、その方法がわからない...)。だから私は(重要でない部分なしで)のようなSLDを持っています:
私がやりたいことは、TextSymbolizer を 1 回作成し、それを 2 つ以上の場所で使用することです... XML でそのようなことを聞いたことがありませんが、あなたはそうしているでしょうか? :-)
私に来る1つの解決策は、非常に単純なジェネレーター(xml.erb?:P)を作成し、XMLを生成させることです...
asp.net - コードの再利用性 - App_Code または BIN または UserControls?
最近、別の開発者と別のフォーラムでディスカッションを行いましたが、トピックは ASP.NET でのコードの再利用でした。述べられたシナリオは、サーバーのアップタイム中に運用サーバーでコードを頻繁に更新する必要があり、その結果、すべてのユーザーのセッションがリセットされるというものでした。彼は、共有コードまたはクラスを App_Code フォルダーに配置したり、プリコンパイル済み DLL を Bin フォルダーに配置したりすることを避けています。これは、更新によってセッションも更新されるためです。
彼が思いついた解決策は、共有コードを UserControls に配置し、必要に応じてそれらを参照することです。これにより、セッションの再起動を強制することなく、次の要求で動的に再コンパイルされる UserControl ファイルのみを更新できます。Usercontrols は UI を持つことを意図していないことに注意してください。おそらく、いくつかのビジネス ロジックを格納するだけです。
本質的に間違っていると感じたので、彼を説得しようとしましたが、これが非常に悪いやり方であるという私の主張を裏付ける確固たる事実を提供することはできませんでした. 私が考えることができる唯一のことは、UI からビジネス ロジックを分離するという原則に違反していることです。私はひどく間違っていますか、それともこれを行うべきではない具体的な理由がありますか? リンクや例は役に立ちます。
注:プロセス外のセッション状態を使用することは、現時点ではオプションではなく、スケジュールされたダウンタイムを決定することもできませんでした。また、これは活発に開発中のサイトであるため、まだ専門的な展開モデルを使用していないようです。
前もって感謝します。
編集:さらに、上記のケースでセッションが再起動する理由を誰かが正確に明確にできると助かります。