Sobes.tech
Senior
56

# Усложнение # Сега имаме нова функция на продукта: резервиране на пари чрез мобилното приложение. # За това трябва да добавим нов метод reserve(amount) в класа ATM. Също така трябва да вземем предвид възможността за HardwareError в методите SDK.

Компаниите бяха попитани
Яндекс

Отговор от AI

sobes.tech AI

Для добавления новой функциональности резервирования денег в класс ATM нужно:

  1. Добавить метод reserve(amount), который будет взаимодействовать с SDK для блокировки суммы.
  2. Обработать возможное исключение HardwareError в методах SDK, чтобы корректно реагировать на ошибки оборудования.

Пример на Python:

class HardwareError(Exception):
    pass

class ATM:
    def __init__(self, sdk):
        self.sdk = sdk

    def reserve(self, amount):
        try:
            self.sdk.block_amount(amount)
        except HardwareError as e:
            # Логируем ошибку, уведомляем пользователя или предпринимаем восстановительные действия
            print(f"Ошибка оборудования при резервировании: {e}")
            raise

    def withdraw(self, amount):
        try:
            self.sdk.dispense_cash(amount)
        except HardwareError as e:
            print(f"Ошибка оборудования при выдаче наличных: {e}")
            raise

Таким образом, новый метод reserve добавляет функциональность резервирования, а обработка HardwareError позволяет надежно работать с аппаратными сбоями.