java

java

JavaでのFacadeパターンの基本と実装方法

Facadeクラスとは、使い方が複雑になっているクラス群をまとめ、使いやすい形のインターフェースとして外部に提供するクラスのことを指します。 デザインパターンでは、このFacadeクラスを利用するパターンをFacadeパターンと呼びます。 ...
java

Javaでのスレッド制御:joinとsynchronizedの使い方

javaでは、スレッドを立てて処理を並列に行うことができます。 しかし、並列に処理を行う際、処理順を制御しなければならないことがあります。 処理順の制御方法として基本的な方法として、joinを使う方法とsynchronizedを使う方法があ...
java

staticとSingletonパターンの違いと使い分け

オブジェクト指向プログラミングのプログラミング手法で、「singleton(シングルトン)」と呼ばれる手法があります。 この手法は、プロジェクト内で共通的に使われるインスタンスを1つだけ予め作成し、外部のクラスにはそのインスタンスを使用させ...
java

Javaでイミュータブルクラスを作成する方法

「イミュータブル」とは「不変」という意味で、オブジェクト指向の世界では「状態(クラス変数)がオブジェクト生成時から変更されないこと」を指します。 有名所では、Stringがイミュータブルなクラスとして知られています。 イミュータブルなクラス...
java

Java 8の関数型インターフェースの背景と考え方

【前置き】 Java8から関数型インターフェースが使用可能になりました。 具体的に「ラムダ式」「Stream」「Optional」「Files」と言った方がわかりやすいでしょうか。 関数型インターフェースの使用を半ば強制されるフレームワーク...