Приветствую всех! Системные администраторы чья работа связанна с администрированием серверов, по тем или иным причинам приходиться делать отсроченную перезагрузку серверов. Многие из них не задумываясь скажут, что введут cmd команды или power shell и этого будет достаточно для этих целей. Однако как показала мой опыт по мимо того, что приходиться запоминать команды, а если их […]
Паттерн Состояние на C#
Паттерн Состояние управляет изменением поведения объекта при изменении его внутреннего состояния. Внешнее это выглядит так, словно объект меняет свой класс. Паттерн Состояние позволяет объекту иметь много разный вариантов поведения в зависимости от его внутреннего состояния. В отличие от процедурных конечных автоматов, состояние в этом паттерне представляется полноценным классом. Поведение контекста реализуется делегированием выполняемых операций текущему […]
Паттерн Компоновщик на C# на примерах
Паттерн Компоновщик объединяет объекты в древовидные структуры для представления иерархий часть\целое. Компоновщик позволяет клиенту выполнять однородные операции сами отдельными объектами и их совокупностями. Паттерн Компоновщик позволяет клиенту выполнять однородные операции с комбинациями и отдельными объектами. Паттерн Компоновщик предоставляет структуру для хранения как отдельных объектов, так и комбинаций. В реализации паттерна Компоновщик приходится искать баланс между […]
Паттерн Итератор на C# на примерах
Паттерн Итератор предоставляет механизм последовательного перебора элементов коллекции без раскрытия ее внутреннего представления. Кроме того, перебор элементов выполняется объектом итератора, а не самой коллекцией.Это упрощает интерфейс, и реализацию коллекции, а также способствует более логичному распределению обязанностей. При использовании итераторов коллекция избавляется от одной обязанности поддержки операций перебора данных. Итератор предоставляет общий интерфейс перебора элементов коллекции, […]
Паттерн Шаблонный Метод на примерах
Паттерн Шаблонный Метода задает скелет алгоритма в методе, оставляя определение реализации некоторых шагов субклассам. Субклассы могут переопределять некоторые части алгоритма без изменения его структуры. Основной задаче паттерна является создание шаблона алгоритма, то есть метод определяющий алгоритм в виде последовательности шагов. Один или несколько шагов определяются ввиде абстрактных методов, реализуемых субклассами. Таким образом гарантируется неизменность структуры […]
