工作HardwareHubは、ロボット工作や電子工作に関する情報やモノが行き交うコミュニティサイトです。
さらに詳しく
利用規約
、
プライバシーポリシー
に同意したうえでログインしてください。
Log in
デザインパターン
Java Factory Method デザインパターン
ある処理フローの大まかな流れをAbstractClassに記述しておき、実際の具体的な処理はConcreteClassに記述するという、システムのフレームワークを実装する場合に有用なTemplate Methodパターンがあります。このTemplate Methodを用いて、インスタンスの生成処理のフレームワークを実装する場合を特にFactory Methodパターンとよびます。 サンプルコード ...
かえるくん
10/7/2018に更新
0
Java
デザインパターン
Java AbstractFactory デザインパターン
複数の製品インスタンス (ConcreteProduct1,2,3,...) を用いた複雑な手順で何らかのアウトプット1を出す場合を考えます。他にも同様の手順でアウトプット2,3,4,...を出すことを求められている場合、抽象化した工場 (AbstractFactory) を用意しておき、抽象工場AbstractFactoryから抽象製品群 (AbstractProduct1,2,3,...) を...
かえるくん
12/28/2015に更新
0
Java
デザインパターン
Java Builder デザインパターン
異なるクラスA,Bがあり、それらのインスタンスを使用して「あるもの」を構築 (Builder) するためのメソッドの呼び出し手順は同じである場合を考えます。共通の構築手順の中で必要となるメソッド群を抽象クラスに記述しておき、クラスA,Bで継承し具体的内容を実装し、共通の構築手順自体をDirectorクラスに記述することで、「あるもの」を構築するための具体的な手順や内容をMainに対して隠蔽すること...
かえるくん
12/27/2015に更新
0
Java
デザインパターン
Java Prototype デザインパターン
一般にインスタンスはクラスから生成します。しかしながら、クラスを用いて1からインスタンスを生成するよりも、雛形 (Prototype) となるインスタンスを用意しておき、それをコピーして (場合によってはさらに多少の変更を加えて) 使用したほうが便利なこともあります。 サンプルコード sample.java class Sample { public static void main(St...
かえるくん
12/25/2015に更新
0
Java
デザインパターン
Java Singleton デザインパターン
何らかの理由で、複数個のインスタンスを生成されては困るあるいは必要ない場合、インスタンスが一つ (Singleton) しか生成されないことを保証することができます。 sample.java class Singleton { private static Singleton singleton = new Singleton(); //クラス変数として唯一のインスタンスを保持 p...
かえるくん
12/20/2015に更新
0
Java
デザインパターン
Java Template Method デザインパターン
ある処理フローの大まかな流れ (Template Method) をAbstractClassに記述しておき、実際の具体的な処理はConcreteClassに記述します。システムのフレームワークを実装する場合等に用いられます。 サンプルコード sample.java abstract class AbstractClass { public abstract void task1(); ...
かえるくん
12/20/2015に更新
0
Java
デザインパターン
Java Adapter デザインパターン
何か新しい機能Targetが必要となった際に、既に十分な運用実績があり信頼できるクラスAdapteeがある場合において、もしもそのクラスAdapteeを使い回して新しい機能Targetが実現できるのであれば、1から実装し直すよりも手間が省けます。既存のクラスAdapteeが要求仕様を満たすように適合させるものAdapterを用意することでこれを実現します。AdapterはWrapperとよばれるこ...
かえるくん
12/20/2015に更新
0
Java
デザインパターン
Java Strategy デザインパターン
一般にある問題を解くためのアルゴリズムは複数存在します。このアルゴリズム (Strategy) 部分をinterfaceで要請した形式に合わせて実装し、委譲を用いて分離することで状況に応じて切り替えて使用できるようにします。切り替え可能なアルゴリズム以外の部分は、委譲でアルゴリズムを利用する側に実装します。また、Mainから直接Strategyを利用することは避けましょう。 サンプルコード ある範...
かえるくん
12/17/2015に更新
0
Java
デザインパターン
Java Bridge デザインパターン
クラスの継承関係 (extends) を大別すると以下の二つがあります。 親クラスがabstractで要請した機能を子クラスが実装する関係 親クラスで不足していた機能 (メソッドなど) を子クラスで追加するための関係 それら継承関係を混在させて実装すると意図が不明瞭になってしまいます。そこでBridgeパターンでは二つの独立した継承関係を用意し、それぞれの継承関係のトップ同士を委譲によってつなぐ ...
かえるくん
12/17/2015に更新
0
Java
デザインパターン
デザインパターンIterator の Javaコード例
Item.java メンバ変数 num を持つ Item を定義します。 class Item { private int num; public Item(int num) { this.num = num; } public int getNum() { return num; } } ConcreteIterator.j...
jun
12/16/2015に更新
0
Java
デザインパターン
さらに読み込む
リニューアルキャンペーンを実施中!記事を投稿して最大1,000円分をゲット🏆⭐