Пример #1
0
        private void btnSmart_Click(object sender, EventArgs e)
        {
            SmartPhone phone = new SmartPhone();

            phone.Brand          = "Samsung";
            phone.ConnectionType = "5G Mobile";
            phone.HasFrontCamera = true;
            phone.isTouch        = true;

            //MessageBox.Show($"Telefonun Türü\t\t : {phone.GetType().Name}\nTelefonun Markası\t\t : {phone.Brand}\nTelefonun Bağlantı Türü\t : {phone.ConnectionType}\nTelefonun sesi\t\t : {phone.Sound()}\nTelefonun Kamerası\t : {(phone.HasCamera ? "Var" : "Yok")}\nTelefonun Ön Kamerası\t : {(phone.HasFrontCamera ? "Var" : "Yok")}\nTelefonun Dokunmatiği\t : {(phone.isTouch ? "Var" : "Yok")}");
            MessageBox.Show(Space("Telefonun türü") + ":" + phone.GetType().Name + "\n" + Space("Telefonun Markası") + phone.Brand + "\n" + Space("Telefonun Bağlantı Türü") + phone.ConnectionType + "\n" + Space("Telefonun Sesi") + phone.Sound());
        }
    public bool Repair(SmartPhone device)
    {
        var isRepaired = false;
        var deviceType = device.GetType();

        if (knowHow.ContainsKey(deviceType))
        {
            var services  = knowHow[deviceType];
            var isSoftOk  = !device.IsDamagedSoftware || services.FactoryReset(device);
            var isGlassOk = !device.IsDamagedGlass || services.ReplaceGlass(device);

            isRepaired = isSoftOk && isGlassOk;
        }

        return(isRepaired);
    }