Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Специализация

Python Backend Developer

Java Backend Developer

Node.js Backend Developer

Golang Backend Developer

React Frontend Developer

Посмотреть все

Выберите навыки

React

React

JavaScript

JavaScript

Git

Git

Redux

Redux

Webpack

Webpack

Посмотреть все

Сложность

1-3

4-6

7-8

9-10

Рейтинг вопросов

1

2

3

4

5

Подпишись на React Developer в телеграм

Вопросы React Frontend Developer


Как реализуется Open-Closed в компонентах?

Что такое принцип открытости/закрытости (O в SOLID)?

Почему важно не изменять существующие реализации, а только расширять их?

Как использовать метод showModal() и close() у нативного элемента <dialog> через реф?

  • Рейтинг:

    4

  • Сложность:

    6

Принцип открытости/закрытости гласит, что компоненты должны быть открыты для расширения, но закрыты для модификации. В контексте UI это означает, что базовый компонент не должен изменяться при добавлении новой функциональности. Вместо этого новая логика добавляется через композицию, наследование (редко) или передачу параметров. Например, кнопку можно расширить, передав новые пропсы или обернув её в HOC, а не изменяя её исходный код. Это делает код более предсказуемым и упрощает тестирование.
Подробнее
  • Рейтинг:

    5

  • Сложность:

    5

Принцип открытости/закрытости (OCP) гласит, что классы должны быть открыты для расширения, но закрыты для модификации. Это означает, что вы можете добавлять новую функциональность, не изменяя существующий код. Достигается это через наследование, полиморфизм и абстракции. Например, вместо изменения класса для поддержки новых типов, вы создаете подклассы или используете интерфейсы.
Подробнее
  • Рейтинг:

    4

  • Сложность:

    5

Принцип открытости/закрытости (OCP) гласит: классы должны быть открыты для расширения, но закрыты для изменения. Это значит, что новую функциональность нужно добавлять через наследование, композицию или интерфейсы, не трогая уже работающий код. Такой подход снижает риск внесения ошибок в проверенные модули и упрощает поддержку системы.
Подробнее
  • Рейтинг:

    3

  • Сложность:

    4

Элемент предоставляет методы showModal() и close() для управления отображением. В React нужно получить доступ к DOM-элементу через useRef, затем вызвать эти методы в обработчиках событий. Это позволяет создавать модальные окна без сторонних библиотек.
Подробнее