Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Чем prototype отличается от singleton?
Singleton (по умолчанию): Один бин на весь контекст приложения.
Prototype: Новый экземпляр при каждом запросе (getBean() или инъекции).
Есть ли возможность создать два Singleton'а в Spring?
В Spring можно создать два бина синглтона, если они имеют разные идентификаторы. Это можно сделать через явную регистрацию бинов с разными именами в конфигурации.
Что знаешь про Singleton?
Singleton — это паттерн проектирования, который гарантирует, что класс будет иметь только один экземпляр, и предоставляет глобальную точку доступа к этому экземпляру. Он используется, когда необходимо управлять единственным состоянием в приложении, например, для работы с конфигурациями или подключениями.
Как бы вы описали паттерн проектирования Singleton?
Паттерн Singleton гарантирует, что класс будет иметь только один экземпляр и предоставляет глобальную точку доступа к этому экземпляру. Это полезно для классов, которые управляют общими ресурсами, такими как подключение к базе данных или конфигурации приложения.
Что такое хуки и зачем их используют (inherited, included, method_added, singleton_method_added, method_missing)?
Хуки — это специальные методы, которые автоматически вызываются при определённых событиях в программе, таких как наследование или добавление методов. Они помогают контролировать и расширять поведение классов.
Что такое Singleton-метод?
Как можно заметить, что нарушен принцип единственной ответственности (Single Responsibility)?
Каково может быть время жизни объекта в DI-контейнере и какие существуют варианты (singleton, transient, scoped)?
Как реализовать паттерн Singleton в C#?
Что такое паттерн проектирования Singleton в C#?
Рейтинг:
3
Сложность:
7
Singleton-метод — это метод, который определён для одного конкретного объекта, а не для класса, к которому он принадлежит.
Рейтинг:
2
Сложность:
7
Класс нарушает SRP, если он выполняет несколько несвязанных задач. Явные признаки: класс имеет слишком много методов, которые делают разное; часто меняется по разным причинам; его зависимости относятся к разным предметным областям; или его название неконкретное (например, Manager, Processor), что указывает на смешение обязанностей.
Рейтинг:
2
Сложность:
7
В .NET объекты в DI-контейнере могут жить как Transient (новый экземпляр при каждом запросе), Scoped (один экземпляр на один scope, например HTTP-запрос) и Singleton (один экземпляр на весь жизненный цикл контейнера). Transient полезен для лёгких, без состояния сервисов, Scoped — для сервисов с контекстом запроса, Singleton — для кэшей и общих ресурсов. Выбор влияет на память, потокобезопасность и поведение зависимостей.
Рейтинг:
2
Сложность:
8
В C# можно реализовать паттерн Singleton несколькими способами, включая:
Не потокобезопасный Singleton.
Потокобезопасный Singleton.
Потокобезопасный Singleton с двойной проверкой блокировки.
Singleton без блокировки.
Использование типа Lazy<T> из .NET 4.0 для ленивой инициализации.
Рейтинг:
2
Сложность:
6
Паттерн Singleton ограничивает создание объекта классом, позволяя создать только один экземпляр. Он обеспечивает глобальный доступ к этому экземпляру через статический метод. Этот паттерн полезен, когда нужно использовать один и тот же объект по всему приложению.
Рейтинг:
1
Сложность:
6
Рейтинг:
2
Сложность:
7
Рейтинг:
2
Сложность:
7
Рейтинг:
2
Сложность:
8
Рейтинг:
3
Сложность:
6