タグ付けされた質問 「design-patterns」

設計パターンは、ソフトウェア設計で一般的に発生する問題に対する一般的な再利用可能なソリューションです。デザインパターンの実装に問題がある場合の質問には、このタグを使用します。テキストパターンマッチングに関する質問には、このタグを使用しないでください。このタグを実装の重い質問に使用する場合-実装が記述されているコード言語にタグを付けます。

10
AutoMapper.CreateMapsをどこに配置しますか?
アプリケーションで使用AutoMapperしていASP.NET MVCます。AutoMapper.CreateMapオーバーヘッドが多いので、別の場所に移動するように言われました。これらの呼び出しを1か所にまとめるようにアプリケーションを設計する方法がよくわかりません。 Webレイヤー、サービスレイヤー、データレイヤーがあります。それぞれ独自のプロジェクト。私はNinjectすべてをDI するために使用します。AutoMapperWebレイヤーとサービスレイヤーの両方で利用します。 では、AutoMapperCreateMapの設定はどうなっていますか?どこに置くの?どのように呼びますか?


5
5歳児への依存性注入を説明するには?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。私たちは回答が事実、参考文献、または専門知識によってサポートされることを期待しますが、この質問はおそらく議論、議論、投票、または拡張された議論を誘います。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 ロックされています。質問はトピックから外れていますが、歴史的に重要であるため、この質問とその回答はロックされています。現在、新しい回答や相互作用を受け入れていません。 依存性注入を説明する良い方法は何ですか? Googleでいくつかのチュートリアルを見つけましたが、読者が単なるJava初心者であると想定するチュートリアルはありませんでした。これを初心者にどのように説明しますか?

22
C#がC ++スタイルの 'friend'キーワードを提供しないのはなぜですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 3年前休業。 この質問を改善する C ++の友人のキーワードが可能にclass A指定するclass Bその友人として。これによりClass B、private/のprotectedメンバーにアクセスできますclass A。 これがC#(およびVB.NET)から除外された理由について、私は何も読んだことがありません。この以前のStackOverflowの質問に対するほとんどの回答は、C ++の有用な部分であり、それを使用する十分な理由があると述べています。私の経験では同意する必要があります。 もう1つの質問friendは、C#アプリケーションと同様のことをする方法を本当に尋ねているようです。答えは一般にネストされたクラスを中心に展開しますが、friendキーワードを使用するほどエレガントではありません。 オリジナルのDesign Patternsブックでは、例全体で定期的に使用しています。 つまり、要約すると、なぜfriendC#に欠けているのか、そしてそれをC#でシミュレートする「ベストプラクティス」の方法とは何でしょうか。 (ちなみに、internalキーワードは同じものではなく、アセンブリ全体のすべてのクラスがinternalメンバーにアクセスfriendできるようにする一方で、特定のクラスに他の1つのクラスへの完全なアクセス権を与えることができます)
208 c#  c++  design-patterns  oop  friend 


4
MVC、MVP、MVVMの設計パターンのコーディングの違いは何ですか?
「MVC、MVP、MVVMの設計パターンの違いは何ですか」というフレーズを使用してGoogleを検索すると、理論的にはMVC MVPとMVVMの設計パターンの違いを説明するいくつかのURLが得られることがあります。 MVP データコンテキストを介したバインドが不可能な状況で使用します。Windowsフォームはこれの完璧な例です。ビューをモデルから分離するには、プレゼンターが必要です。ビューはプレゼンターに直接バインドできないため、インターフェイス(IView)を介してビューに情報を渡す必要があります。 MVVM データコンテキストによるバインドが可能な状況で使用します。どうして?各ビューのさまざまなIViewインターフェイスが削除され、維持するコードが少なくなります。MVVMが可能な例には、Knockoutを使用したWPFおよびJavaScriptプロジェクトが含まれます。 MVC ビューとプログラムの残りの部分との間の接続が常に利用できるとは限らない(そして、MVVMまたはMVPを効果的に使用できない)状況で使用します。これは、Web APIがクライアントのブラウザーに送信されるデータから分離されている状況を明確に説明しています。MicrosoftのASP.NET MVCは、このような状況を管理するための優れたツールであり、非常に明確なMVCフレームワークを提供します しかし、理論的にはサンプルコードと共にその違いを説明する記事は1つもありません。 これらの3つのデザインパターン(MVC、MVP、MVVM)の違いについてコードと一緒に説明する記事を入手できたら、本当に嬉しいです。 これら3つのデザインパターン(MVC、MVP、MVVM)によって実装された3つの類似したCRUDアプリのソースコードを手に入れたいのですが。コードを確認して、これら3つの設計パターン(MVC、MVP、MVVM)のコードをどのように記述するかを理解できるようにします。 したがって、これらの3つの設計パターン(MVC、MVP、MVVM)でコードがどのように異なるかを説明する記事が存在する場合は、その記事にリダイレクトしてください。

10
オブザーバーとオブザーバブルはいつ使用すべきですか?
面接官は私に尋ねました: 何ObserverをObservable、いつ使うべきですか? 私は、これらの用語を認識していなかったので、私は戻って家を得たときは約グーグルで始めたObserverとObservable私は別の資源からいくつかのポイントを見つけ、: 1)ObservableはクラスでObserverあり、インターフェースです。 2)ObservableクラスはObserversのリストを保持します。 3)Observableオブジェクトが更新されると、オブジェクトupdate()の各のメソッドが呼び出され、Observer変更されたことが通知されます。 私はこの例を見つけました: import java.util.Observable; import java.util.Observer; class MessageBoard extends Observable { public void changeMessage(String message) { setChanged(); notifyObservers(message); } } class Student implements Observer { @Override public void update(Observable o, Object arg) { System.out.println("Message board changed: " + arg); } } public class MessageBoardTest { …

24
インターフェイスを作成するタイミングを知るにはどうすればよいですか?
開発学習の途中で、インターフェイスについてもっと学ぶ必要があると感じています。 よく読んでいますが、なかなか理解できないようです。 私は次のような例を読みました:「基本」、「歩く」、「実行」、「GetLegs」などのIAnimalインターフェースを備えたもの-しかし、何かに取り組んだことがなく、「インターフェースを使用する必要がありますここに!" 何が欠けていますか?なぜ私が理解するのが難しいのですか?私はそれを具体的に必要としていることに気づかなかったかもしれないという事実に驚かされました。開発者という点で最高のものが足りないように感じます。もし誰かがこのような経験をしていて画期的な経験をしたなら、私はこの概念を理解する方法に関するいくつかのヒントに感謝します。ありがとうございました。

13
アンチパターンとは何ですか?
私はパターンとアンチパターンを研究しています。私はパターンについて明確な考えを持っていますが、アンチパターンを取得していません。WebとWikipediaの定義は私を混乱させます。 誰かがアンチパターンとは何かを簡単な言葉で私に説明できますか?目的は何ですか?彼らは何をしますか?それは悪いことですか、それとも良いことですか?


10
MVCのビジネスロジック[終了]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 17日前休業。 この質問を改善する 2つの質問があります。 Q1。「ビジネスロジック」はMVCパターンのどこにあるのでしょうか。モデルとコントローラーの間で混乱しています。 Q2。「ビジネスロジック」は「ビジネスルール」と同じですか?そうでない場合、違いは何ですか? 小さな例で説明していただければ幸いです。

7
デザインパターン:ファクトリvsファクトリメソッドvs抽象ファクトリ
ウェブサイトからデザインパターンを読んでいた そこで、ファクトリー、ファクトリーメソッド、アブストラクトファクトリーについて読みましたが、それらは非常に混乱しており、定義が明確ではありません。定義によると ファクトリ-インスタンス化ロジックをクライアントに公開せずにオブジェクトを作成し、共通のインターフェースを介して新しく作成されたオブジェクトを参照します。ファクトリーメソッドの簡易バージョンです ファクトリメソッド-オブジェクトを作成するためのインターフェイスを定義しますが、インスタンス化するクラスをサブクラスに決定させ、共通のインターフェイスを通じて新しく作成されたオブジェクトを参照させます。 抽象ファクトリー-クラスを明示的に指定せずに、関連オブジェクトのファミリーを作成するためのインターフェースを提供します。 Abstract FactoryとFactory Methodに関する他のスタックオーバーフロースレッドも調べましたが、そこに描画されたUMLダイアグラムは理解をさらに悪くします。 誰か教えてください これら3つのパターンはどのように違うのですか? いつ使用するのですか? また、可能であれば、これらのパターンに関連するJavaの例はありますか?

3
REST APIログインパターン
私はREST APIを作成しています。動詞ではなく名詞を使用し、URLに焼き付けられたAPIバージョン、コレクションごとに2つのAPIパス、GET POST PUT DELETEの使用法などを使用して、apigeeの提案に厳密に従っています。 ログインシステムに取り組んでいますが、ユーザーにログインするための適切なREST方法がわかりません。この時点ではセキュリティに取り組んでいません。ログインパターンまたはログインフローのみです。(後で、HMACなどを使用して2ステップのoAuthを追加します) 可能なオプション のようなものへのPOST https://api...com/v1/login.json のようなものへのPUT https://api...com/v1/users.json 私が持っていない何か... ユーザーのログインに適切なRESTスタイルは何ですか?

8
Spring AOPとAspectJ
Spring AOPは、カスタムJava5アノテーションをフレームワークとして使用するため、セキュリティ、ロギング、トランザクションなどのアプリケーション固有のタスクに最適に使用されていると感じています。ただし、AspectJは、より賢明なデザインパターンのようです。 誰かがSpringアプリケーションでSpring AOPとAspectJを使用することのさまざまな長所と短所を強調できますか?

6
Enumを使用したシングルトンの実装(Java)
私は次のようなものをSingleton使用してJavaで実装することが可能であることを読みEnumました: public enum MySingleton { INSTANCE; } しかし、上記はどのように機能しますか?具体的には、Objectインスタンス化する必要があります。ここでは、どのようMySingletonにインスタンス化されていますか?誰がやってるのnew MySingleton()?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.