İpucu

Factory Sınıfının Yapılması

Factory tasarımına uygun bir sınıf yapmak için bir Factory sınıfı olmalı ve bu sınıfta createXXX şeklinde bir method bulunmalıdır. createXXX.. methodu bir interface , abstract class veya class döndürebilir. create methodu aldığı parametre değerlerine göre veya çalışma anındaki konfigurasyon veya anlık durum bilgilerine göre (örneğin zaman , sistem bilgisi vs.) farklı class'lardan bir tercih yapmalı ve bulduğu class'ın nesnesini yaratıp döndürmelidir. Bu şekilde Factory class'ını kullanan nesnelerin nasıl yaratılacağı ve hangi class'tan yaratılacağı ile ilgilenmez. Aşağıda bir factory class genel yapısı bulunmaktadır. 

 

public class Factory {

	public A create****() { // burada parametre girilebilir de.

		if (kosul1) { // koşul uyuyor ise

			return new X();

		} else if (kosul2) { // koşul uyyor ise

			return new Y();

		} else if (kosul3) { // koşul uyyor ise

			return new Z();

		} else { // hiç bir koşula uymuyor ise

			return new T();

		}

	}

}

 

Burada eğer A class'ı bir interface ise  X , Y , Z , T class'ları bu interface'si implements etmiştir. Eğer abstract class veya class ise X , Y , Z , T class'ları A class'ını extend etmiş olması gerekmektedir. 

zafer.teker , 27.09.2014

Bu Sayfayı Paylaş:

Fibiler Üyelerinin Yorumları


Tüm üyeler içeriklere yorum ekleyerek katkıda bulunabilir : Yorum Gir



Bu Sayfayı Paylaş:

İletişim Bilgileri

Takip Et

Her Hakkı Saklıdır. Bu sitede yayınlanan tüm bilgi ve fikirlerin kullanımından fibiler.com sorumlu değildir. Bu sitede üretilmiş , derlenmiş içerikleri, fibiler.com'u kaynak göstermek koşuluyla kendi sitenizde kullanılabilirsiniz. Ancak telif hakkı olan içeriklerin hakları sahiplerine aittir