Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            IPad      iPad      = new IPad("Ipad mini", "Apple");
            GalaxyTab galaxyTab = new GalaxyTab("Galaxy Tab", "Samsung");

            iPad.Accept(new WifiVisitor());
            galaxyTab.Accept(new WifiVisitor());

            iPad.Accept(new ThreeGVisitor());
            galaxyTab.Accept(new ThreeGVisitor());

            //* bunun gibi baska visitor sınıfları yazarak sınıfımızı değiştirmeden
            //* yeni metotlar çalıştırabilir hale getirebiliriz.

            Console.ReadLine();
        }
Ejemplo n.º 2
0
        public void TestCreateTablet()
        {
            iPad            tablet = new iPad();
            AbstractFactory apple  = new AppleFactory();

            Assert.AreSame(tablet.GetType(), apple.createTablet().GetType());

            LumiaTab        nokiatablet = new LumiaTab();
            AbstractFactory nokia       = new NokiaFactory();

            Assert.AreSame(nokiatablet.GetType(), nokia.createTablet().GetType());

            GalaxyTab       samsungtablet = new GalaxyTab();
            AbstractFactory samsung       = new SamsungFactory();

            Assert.AreSame(samsungtablet.GetType(), samsung.createTablet().GetType());
        }