static void Main(string[] args) { ////servisler tanımlanıyor. ServiceProvider serviceProvider = DependencyInjection.Register(); IRoverService roverService = serviceProvider.GetService <IRoverService>(); CommandInvoker commandInvoker = new CommandInvoker(); List <string> inputs = GetInputs(); /// verilen bilgilere göre rover'lar oluşturuluyor. List <Rover> rovers = roverService.GetRovers(inputs); /// oluşan roverlar'ın komutları(sağa dön, sola dön, ilerle) set edilip hareket etmesi sağlanıyor. foreach (var rover in rovers) { foreach (var roverCommand in rover.Commands) { commandInvoker.SetCommand(roverCommand); commandInvoker.Invoke(); } } WriteOutput(rovers); }