1.0.3
This commit is contained in:
parent
23c88eb642
commit
ddc05f8703
3
.gitignore
vendored
3
.gitignore
vendored
@ -6,7 +6,8 @@
|
||||
#
|
||||
# or wget:
|
||||
# wget --no-check-certificate http://gist.githubusercontent.com/kmorcinek/2710267/raw/.gitignore
|
||||
|
||||
pre_commit.ps1
|
||||
pre_commit.log
|
||||
# User-specific files
|
||||
*.suo
|
||||
*.user
|
||||
|
@ -1,4 +1,12 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/*
|
||||
* Глава 17: Принцип единственной обязанности (SOLID SRP)
|
||||
*
|
||||
* - инкапсуляция сущности с целью организации архитектуры
|
||||
|
@ -1,4 +1,12 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/*
|
||||
* Глава 18: Принцип открытости/закрытости (SOLID SRP)
|
||||
*
|
||||
* Автор: Роберт Мартин (Дядя Боб)
|
||||
|
@ -1,4 +1,12 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/*
|
||||
* Глава 19: Принцип подстановки Барбары Лисков (SOLID SRP)
|
||||
*
|
||||
* Автор: Роберт Мартин (Дядя Боб)
|
||||
|
@ -1,4 +1,12 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/*
|
||||
* Глава 20: Принцип разделения интерфейсов (SOLID SRP)
|
||||
*
|
||||
* Автор: Роберт Мартин (Дядя Боб)
|
||||
|
@ -1,4 +1,12 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/*
|
||||
* Глава 21: Принцип инверсии зависимостей (SOLID SRP)
|
||||
*
|
||||
* Автор: Роберт Мартин (Дядя Боб)
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Абстрактная фабрика
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Абстрактная фабрика
|
||||
Предоставляет интерфейс для создания
|
||||
групп связанных или зависимых объектов,
|
||||
не указывая их конкретный класс
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Адаптер
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Адаптер
|
||||
Конвенртирует интерфейс класса в другой интерфейс,
|
||||
ожидаемый клиентом. Позволяет классам
|
||||
с разными интерфейсами работать вместе.
|
||||
|
@ -1,3 +1,11 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Base.UserLibrary.Tests
|
||||
{
|
||||
[TestClass]
|
||||
@ -12,11 +20,11 @@ namespace Base.UserLibrary.Tests
|
||||
private UserManagerMsTest manager = new UserManagerMsTest();
|
||||
|
||||
/// <summary>
|
||||
/// DataSource - определение источника данных
|
||||
/// 1 параметр - имя провайдера
|
||||
/// 2 параметр - строка подключения или путь к файлу
|
||||
/// 3 параметр - имя таблицы или элемента XML
|
||||
/// 4 параметр - как происходит доступ к записям из источника данных
|
||||
/// DataSource - определение источника данных
|
||||
/// 1 параметр - имя провайдера
|
||||
/// 2 параметр - строка подключения или путь к файлу
|
||||
/// 3 параметр - имя таблицы или элемента XML
|
||||
/// 4 параметр - как происходит доступ к записям из источника данных
|
||||
/// </summary>
|
||||
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.XML",
|
||||
"TestData.xml",
|
||||
|
@ -1 +1,9 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
global using Microsoft.VisualStudio.TestTools.UnitTesting;
|
@ -1,4 +1,12 @@
|
||||
using System;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
using System;
|
||||
|
||||
public class Base
|
||||
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Base;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Base;
|
||||
|
||||
public class AssertMsTest
|
||||
{
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Base
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Base
|
||||
{
|
||||
/// <summary>
|
||||
/// Тестовый класс статических реализаций
|
||||
|
@ -1,4 +1,12 @@
|
||||
using Newtonsoft.Json;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
using Newtonsoft.Json;
|
||||
using static Base.Records;
|
||||
|
||||
namespace Base;
|
||||
|
@ -1,19 +1,27 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
using Base;
|
||||
|
||||
namespace BaseTests;
|
||||
|
||||
/// <summary>
|
||||
/// Модульный тест
|
||||
/// Конфигурирование:
|
||||
/// Чтобы добавить возможность вызывать методы какого-либо проекта
|
||||
/// Нажимаем правой кнопкой на зависимости в данном проекте
|
||||
/// Выбираем пункт - добавить ссылку на проект
|
||||
/// Модульный тест
|
||||
/// Конфигурирование:
|
||||
/// Чтобы добавить возможность вызывать методы какого-либо проекта
|
||||
/// Нажимаем правой кнопкой на зависимости в данном проекте
|
||||
/// Выбираем пункт - добавить ссылку на проект
|
||||
/// </summary>
|
||||
[TestClass]
|
||||
public class TestsMain
|
||||
{
|
||||
/// <summary>
|
||||
/// Реализация тестового метода модульного теста
|
||||
/// Реализация тестового метода модульного теста
|
||||
/// </summary>
|
||||
[TestMethod]
|
||||
public void TestMethod1()
|
||||
@ -26,6 +34,6 @@ public class TestsMain
|
||||
int actual = classMain.countBuild;
|
||||
|
||||
// assert
|
||||
Assert.AreEqual(expected, actual, 0.001, "BuildCount not correctly"); //сравниваем полученное значение с требуемым
|
||||
Assert.AreEqual(expected, actual, 0.001, "BuildCount not correctly"); //сравниваем полученное значение с требуемым
|
||||
}
|
||||
}
|
@ -1,4 +1,12 @@
|
||||
using System.Diagnostics;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
using System.Diagnostics;
|
||||
|
||||
namespace Base.Tests;
|
||||
|
||||
|
@ -1,4 +1,12 @@
|
||||
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
|
||||
using System.Diagnostics;
|
||||
using System.Xml.Linq;
|
||||
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Base.Tests;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Base.Tests;
|
||||
|
||||
[TestClass]
|
||||
public class AssemblyInit
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Base.Tests;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Base.Tests;
|
||||
|
||||
[TestClass]
|
||||
public class AssertMethods
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Base.Tests;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Base.Tests;
|
||||
|
||||
/// <summary>
|
||||
/// Проверяет результат работы с коллекциями
|
||||
|
@ -1,4 +1,12 @@
|
||||
using System.Text.RegularExpressions;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace Base.Tests;
|
||||
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Base.Tests;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Base.Tests;
|
||||
|
||||
[TestClass]
|
||||
public class ExpectingExceptions
|
||||
|
@ -1 +1,9 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
global using Microsoft.VisualStudio.TestTools.UnitTesting;
|
@ -1,4 +1,12 @@
|
||||
/* Мост
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Мост
|
||||
Разделяет абстракцию и реализацию так,
|
||||
чтобы они могли изменяться независимо друг от друга
|
||||
*/
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Строитель
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Строитель
|
||||
Разделяет создание сложного объекта
|
||||
и его инициализацию так, что одинаковый
|
||||
процесс построения может может создавать
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Цепочка обязанностей
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Цепочка обязанностей
|
||||
Избегает связывание отправителя запроса
|
||||
с его получателем, давая возможность обработать
|
||||
запрос более чем одному объекту. Связывает
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Команда
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Команда
|
||||
Инкапсулирует запрос в виде объекта
|
||||
позволяя передавать их клиентам в
|
||||
качестве параметров, ставить в очередь,
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Компоновщик
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Компоновщик
|
||||
Компонует объекты в древовидную структуру по принципу "часть-целое",
|
||||
представляя их в виде иерархии. Позволяет
|
||||
клиенту одинаково обращаться как к отдельному,
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Декоратор
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Декоратор
|
||||
Динамически предоставляет объекту
|
||||
дополнительные возможности. Представляет
|
||||
собой гибкую альтернативу наследованию
|
||||
|
@ -1,4 +1,12 @@
|
||||
using System.Collections;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
using System.Collections;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Specialized;
|
||||
using System.Diagnostics;
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Фасад
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Фасад
|
||||
Предоставляет единый интерфейс к группе
|
||||
интерфейсов подсистемы. Определяет высокоуровневый
|
||||
интерфейс, делая систему проще для использования.
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Фабричный метод
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Фабричный метод
|
||||
Определяет интерфейс для создания объекта,
|
||||
но позволяет подклассам решать, какой класс создавать.
|
||||
Позволяет делегировать создание класса
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Гибкий(плавный, текучий) строитель (интерфейс)
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Гибкий(плавный, текучий) строитель (интерфейс)
|
||||
Позволяет упростить процесс создания сложных
|
||||
объектов с помощью методов-цепочек, которые
|
||||
наделяют объект каким-то определенным качеством
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Приспособленец
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Приспособленец
|
||||
Благодаря совместному использованию,
|
||||
поддерживает эффективную работу
|
||||
с большим количеством объектов.
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Интерпретатор
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Интерпретатор
|
||||
Получая формальный язык, определяет
|
||||
представление его грамматики и интерпретатор,
|
||||
использующий это представление для обработки
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Итератор
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Итератор
|
||||
Предоставляет способ последовательного
|
||||
доступа к множеству, независимо от его
|
||||
внутреннего устройства
|
||||
|
@ -1,10 +1,18 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace LetCode.Tests
|
||||
{
|
||||
[TestClass]
|
||||
public class Tests
|
||||
{
|
||||
/// <summary>
|
||||
/// Индексы чисел в массиве образующих число target
|
||||
/// Индексы чисел в массиве образующих число target
|
||||
/// </summary>
|
||||
[TestMethod]
|
||||
public void TwoSumTest()
|
||||
|
@ -1 +1,9 @@
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
global using Microsoft.VisualStudio.TestTools.UnitTesting;
|
@ -1,4 +1,12 @@
|
||||
public static class LetCodeTasks
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
public static class LetCodeTasks
|
||||
{
|
||||
/// <summary>
|
||||
/// Какие числа массива дают в сумме указанное число
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Посредник
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Посредник
|
||||
Определяет объект инкапсулирующий способ
|
||||
взаимодействия объектов. Обеспечивает слабую связь,
|
||||
избавляя их от необходимости ссылаться друг на друга
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Хранитель + Одиночка
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Хранитель + Одиночка
|
||||
Не нарушая инкапсуляцию, определяет
|
||||
и сохраняет внутреннее состояние объекта и
|
||||
позволяет позже восстановить объект в этом
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Наблюдатель
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Наблюдатель
|
||||
Определяет зависимость один ко многим
|
||||
между объектами так, что когда один меняет
|
||||
своё состояние, все зависимые объекты оповещаются
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Прототип
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Прототип
|
||||
Определяет несколько видов объектов,
|
||||
чтобы при создании использовать объект-прототип
|
||||
и создаёт новые объекты, копируя прототип
|
||||
|
@ -1,4 +1,12 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
/* Заместитель
|
||||
Предоставляет объект-заместитель другого объекта
|
||||
для контроля доступа к нему
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Одиночка
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Одиночка
|
||||
Гарантирует что класс имеет только
|
||||
один экземпляр и представляет глобальную
|
||||
точку доступа к нему
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Состояние
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Состояние
|
||||
Позволяет объекту изменять
|
||||
своё поведение в зависимости от
|
||||
внутреннего состояния
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Strategy;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Strategy;
|
||||
|
||||
internal interface ILogReader
|
||||
{
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Strategy;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Strategy;
|
||||
|
||||
public enum LogType
|
||||
{
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Strategy;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Strategy;
|
||||
|
||||
public class LogFileReader : ILogReader
|
||||
{
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Strategy;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Strategy;
|
||||
|
||||
public class LogProcessor
|
||||
{
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Стратегия
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Стратегия
|
||||
Определяет группу алгоритмов,
|
||||
инкапсулирует их и делает взаимозаменяемыми.
|
||||
Позволяет изменять алгоритм независимо от клиентов,
|
||||
|
@ -1,4 +1,12 @@
|
||||
namespace Strategy;
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
namespace Strategy;
|
||||
|
||||
public class WindowsEventLogReader : ILogReader
|
||||
{
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Шаблонный метод
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Шаблонный метод
|
||||
Определяет алгоритм, некоторые этапы которого
|
||||
делегируются подклассам. Позволяет подклассам
|
||||
переопределить эти этапы, не меняя структуру алгоритма.
|
||||
|
@ -1,4 +1,12 @@
|
||||
/* Посетитель
|
||||
/*
|
||||
* Author: Nikolay Dvurechensky
|
||||
* Site: https://www.dvurechensky.pro/
|
||||
* Gmail: dvurechenskysoft@gmail.com
|
||||
* Last Updated: 12 мая 2025 03:31:02
|
||||
* Version: 1.0.7
|
||||
*/
|
||||
|
||||
/* Посетитель
|
||||
Представляет собой операцию, которая
|
||||
будет выполнена над объектами группы классов.
|
||||
Даёт возможность определить новую операцию
|
||||
|
Loading…
Reference in New Issue
Block a user