예제 #1
0
        static void Main(string[] args)
        {
            ILoggerService   fileLogger            = new FileLoggerService();
            ILoggerService   databaseLogger        = new DatabaseLoggerService();
            IValidateService mernisValidateService = new MernisValidateService();

            IEntityService playerManager = new PlayerManager(new List <ILoggerService> {
                databaseLogger, fileLogger
            },
                                                             new List <IValidateService> {
                mernisValidateService
            });
            Person enginHoca = new Player()
            {
                NationalityNumber = "00000000000", Name = "Engin",
                LastName          = "Demiroğ", YearOfBirth = 1985, Balance = 4000
            };
            Person poyraz = new Player()
            {
                NationalityNumber = "11111111111", Name = "Poyraz",
                LastName          = "Aktaş", YearOfBirth = 2000, Balance = 1500
            };
            Person ayaz = new Player()
            {
                NationalityNumber = "22222222222", Name = "A",
                LastName          = "Aktaş", YearOfBirth = 2003, Balance = 99999
            };
            Person mert = new Player()
            {
                NationalityNumber = "33333333333", Name = "Mert",
                LastName          = "Özcan", YearOfBirth = 2000, Balance = 2200
            };

            playerManager.Add(enginHoca);
            playerManager.Add(poyraz);
            playerManager.Add(ayaz);
            playerManager.Add(mert);


            IEntity gta5 = new Game()
            {
                Id = 1, Name = "GTA 5", Publisher = "Rockstar Games", UnitPrice = 140.50
            };
            IEntity wow = new Game()
            {
                Id = 2, Name = "World of Warcraft", Publisher = "Blizzard", UnitPrice = 2000
            };
            IEntity cyberpunk = new Game()
            {
                Id = 3, Name = "Cyberpunk 2077", Publisher = "CD Projekt Red ", UnitPrice = 239.99
            };

            IEntityService gameManager = new GameManager(new List <ILoggerService> {
                databaseLogger
            });

            gameManager.Add(gta5);
            gameManager.Add(wow);
            gameManager.Add(cyberpunk);

            ISalesService yaz_indirimi       = new SummerSalesManager();
            ISalesService karaCuma_indirimi  = new BlackFridaySalesManager();
            ISalesService yilbasi_indirimi   = new NewYearSalesManager();
            ISalesService haftasonu_indirimi = new WeekendSalesManager();

            IPlatformService steam      = new SteamPlatformManager(new List <ISalesService> {
            });
            IPlatformService epic_games =
                new EpicGamesPlatformManager(new List <ISalesService> {
                karaCuma_indirimi, haftasonu_indirimi
            });

            steam.BuyGame(poyraz, gta5);
            epic_games.BuyGame(enginHoca, cyberpunk);
            steam.ToRefund(poyraz, gta5);
            epic_games.BuyGame(poyraz, gta5);
        }
예제 #2
0
        static void Main(string[] args)
        {
            IEntityService playerManager = new PlayerManager();
            Person         yasin         = new Player()
            {
                NationalityIdentity = "12345678901",
                Name        = "Yasin",
                LastName    = "ÖZer",
                YearOfBirth = 1998,
                Balance     = 2000
            };
            Person zeynep = new Player()
            {
                NationalityIdentity = "12345678901",
                Name        = "Zeynep Nur",
                LastName    = "ÖZer",
                YearOfBirth = 2013,
                Balance     = 5000
            };
            Person ozer = new Player()
            {
                NationalityIdentity = "12345678901",
                Name        = "Ozer",
                LastName    = "Yasin",
                YearOfBirth = 1998,
                Balance     = 1850.5
            };

            //--operations of persons
            playerManager.Add(yasin);
            playerManager.Add(zeynep);
            playerManager.Add(ozer);

            //operations of games
            IEntity rocketLeague = new Game()
            {
                Id = 1, Name = "Rocket League", Publisher = "Psyonix", UnitPrice = 25
            };
            IEntity gta5 = new Game()
            {
                Id = 1, Name = "GTA V", Publisher = "Rockstar Games", UnitPrice = 200
            };
            IEntity madMax = new Game()
            {
                Id = 1, Name = "Mad Max", Publisher = "Warner Bros. Interactive Entertainment", UnitPrice = 123
            };

            IEntityService gameManager = new GameManager();

            gameManager.Add(rocketLeague);
            gameManager.Add(gta5);
            gameManager.Add(madMax);


            //operations of Sales
            ISalesService seasonSale  = new SeasonSalesManager();
            ISalesService studenSale  = new StudentSalesManager();
            ISalesService summerSale  = new SummerSalesManager();
            ISalesService weekendSale = new WeekendSalesManager();
            ISalesService welcomeSale = new WelcomeSalesManager();
            ISalesService winterSale  = new WinterSalesManager();

            //platforms
            IPlatformService epicGames = new EpicGamesPlatformManager(new List <ISalesService>()
            {
                seasonSale, studenSale, summerSale, weekendSale, winterSale
            });
            IPlatformService steam = new SteamPlatformManager(new List <ISalesService>()
            {
                welcomeSale
            });

            //game CRUD simulation
            steam.BuyGame(zeynep, gta5);
            steam.ToRefund(zeynep, gta5);
            epicGames.BuyGame(gta5, zeynep);
            epicGames.BuyGame(yasin, rocketLeague);
            steam.ToRefund(ozer, madMax);
        }