Принцип открытости-закрытости на примере?

Поподробнее, объясните.
Есть принцип OCP - the Open Closed Principle (Открытости-Закрытости).

Прошу объяснить на примере.

У менять есть абстрактный класс BaseData

public abstract class BaseData
    {
        public virtual void Get()
        {

        }
    }


Есть класс AdminData который наследуем от BaseData
class AdministratorData : BaseData
    {
        public override void Get()
        {
            base.Get();
        }
    }


Теперь вопрос. Каким образом мне проверять условия отображения данных для администратора, или для обычного пользователя без использования if, switch (использование данных операторов выбора нарушает принцип OCP)?
  • Вопрос задан
  • 658 просмотров
Пригласить эксперта
Ответы на вопрос 1
DanielMcRon
@DanielMcRon
C# && Unity
Обозначение с примером https://metanit.com/sharp/patterns/5.2.php
Пример паттерна
https://metanit.com/sharp/patterns/4.3.php
Открыт для расширения, закрыт для изменения.
Думаю после этих ссылок должны отпасть вопросы
И не всегда можно идеально выполнить все принципы
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы