Bu Fabrika Yöntemi yaratma kapasitesidir.
Bir süre fabrika yöntemi oluşturma desen şimdi kullanıyorum. Sadece son zamanlarda bu söylendi:
public static class ScheduleTypeFactory
{
public static IScheduleItem GetScheduleItem(ScheduleTypeEnum scheduleType)
{
IScheduleItem scheduleItem = null;
switch (scheduleType)
{
case ScheduleTypeEnum.CableOnDemandScheduleTypeID:
{
scheduleItem = new VODScheduleItem();
break;
}
case ScheduleTypeEnum.BroadbandScheduleTypeID:
{
scheduleItem = new VODScheduleItem();
break;
}
case ScheduleTypeEnum.LinearCableScheduleTypeID:
{
scheduleItem = new LinearScheduleItem();
break;
}
case ScheduleTypeEnum.MobileLinearScheduleTypeID:
{
scheduleItem = new LinearScheduleItem();
break;
}
}
return scheduleItem;
}
}
benim değil, fabrika yöntemi oluşturma bir desen "" bana söylemeden neden neden ya bana kendi yorumunu veriyor. Teknoloji Ben nazik bir açıklama istedi ve vakti olmadığını söyledi. Sadece yeniden adlandırmak için söylendi. Eğer yanılıyorsam, o zaman hiç şüphesiz yıllardır uygulanan bu yanlış olduğunu kabul ediyorum. Fabrika yöntemi oluşturma tasarım deseni nasıl? Şimdiden teşekkürler.
CEVAP
Bu yöntem bir ara kabul ederim "Fabrika Yöntemini" ama tasarımı kesinlikle bir değildir"". Factory Method Deseni< / ^ br . Burada önemli bir nokta (Wikipedia):
...Fabrika yöntemini sağlayan bir sınıf örnekleme alt sınıflar için." Ertele
Sınıf statik ve statik yöntem (dolayısıyla sanal olmayan) olduğundan, "" mümkün. ertelemek yok
Kavramsal olarak, bu uygulama, olsa da saklama sağlar, dikkat edin de,/herhangi bir karar gecikme ayrıştır değil.
Bunu söyledikten sonra, aynı Wikipedia makale olarak bu şema mevcutvaryant"". Factory Method Deseni
Özet Özet: bence bu parçasında değildoğruuygulanması "", "bir sınıf, alt sınıflar için örnekleme erteleme." tatmin olmadığı için Fabrika Yöntemi Tasarım Deseni OO Ama, kişisel olarak özgürce bu çözüme bakın ben de "fabrika yöntemini".
Bunu yapmak içingerçekfactory method deseni, yöntemi, alt sınıflar tarafından geçersiz kılınması için izin vermeniz gerekir. I. e. fabrika sınıfı genişletilebilir (yani statik olmayan), ve GetScheduleİtem gerekiyor sanal olması gerekir.
Soyut Fabrika Deseni ve Fabrika Yöntem...
Design Patterns: Abstract Factory vs F...
Bir Kurucu kullanmak için zaman ve get...
() kopya vs fabrika yöntemi yapıcı vs?...
Tasarım Desenleri: Fabrika Fabrika yön...