Паттерны проектирования: Prototype создаёт объекты через клонирование, а Singleton ограничивает их одним экземпляром Prototype берёт уже существующий объект и клонирует его, чтобы быстро получить новые экземпляры с…
объектно-ориентированное программирование Интерфейс определяет контракт — набор методов без реализации Абстрактный класс способен хранить состояние и содержать реализованные методы Класс может реализовать несколько…
Как ключевое слово final влияет на диспетчеризацию методов? — объектно-ориентированное программирование и оптимизация вызовов — final не позволяет подклассам переопределять метод — для метода с модификатором final…
Какие дандер‑методы требуется реализовать для контекстного менеджера? контекстный менеджер — это объект, который управляет ресурсами Для собственного контекстного менеджера требуется реализовать два метода: enter —…
Когда в Kotlin выбирать data class, а когда обычный класс? data class предназначен для хранения данных и автоматически получает equals(), hashCode(), toString(), copy() и компоненты Его выбирают, если важны…
Чем паттерн «Декоратор» отличается от реализации в Python Декоратор — структурный паттерн, предназначенный для динамического расширения поведения объекта В Python его часто реализуют с помощью функций-декораторов либо…
Что называют инвариантом класса (class invariant)? понятие объектно-ориентированного программирования, описывающее свойства объекта условие, которое сохраняет истинность на протяжении всего существования объекта…