SORU
30 NİSAN 2009, PERŞEMBE


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
1 Mayıs 2009, Cuma


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.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Associated Press

    Associated P

    18 EYLÜL 2006
  • Jeremy Stark

    Jeremy Stark

    23 Mayıs 2010
  • Wii Minute Radio

    Wii Minute R

    31 Mayıs 2008