Изменения документа MathOperationsWithGeneric
Редактировал(а) Alexandr Fokin 2024/05/25 10:32
От версии 3.4
отредактировано Alexandr Fokin
на 2020/08/24 15:02
на 2020/08/24 15:02
Изменить комментарий:
Редактировать комментарий
К версии 1.1
отредактировано Alexandr Fokin
на 2020/08/19 10:23
на 2020/08/19 10:23
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
-
Объекты (0 изменено, 0 добавлено, 2 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -3,4 +3,3 @@ 3 3 https://git.denhome.ru/Repository/Detail/6e0c75c1-a619-4785-8b2d-d5eebd022ebc 4 4 5 5 Пример показывающий возможность применять арифметические операции над T элементами Generic<T> классов. 6 -
- XWiki.XWikiComments[0]
-
- Автор
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.cccc1808 - Комментарий
-
... ... @@ -1,3 +1,0 @@ 1 -Более подробный и профессиональный разбор данной темы: 2 -Unsafe generic math in C# 3 -https://habr.com/ru/post/480416/ - Дата
-
... ... @@ -1,1 +1,0 @@ 1 -2020-08-19 10:24:15.957
- XWiki.XWikiComments[1]
-
- Автор
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.cccc1808 - Комментарий
-
... ... @@ -1,12 +1,0 @@ 1 -Одно из возможных решений данной задачи стоится на DI + Generic. 2 -Мы можем объявить generic интерфейс, реализующий набор математических операций над указанным типом. 3 -Мы можем реализовать данный интерфейс для всех необходимых типов. При этом у нас не будет мест, в которых бы нужно было выполнять приведение типов. 4 -С помощью DI регистрируем необходимые реализации и в нужном месте резольвим необходимый. Причем можем так-же внедрить в конструктор к другим классам. 5 - 6 -Минусы: 7 -- Необходимо реализовывать интерфейс под каждый тип, в том числе для стандартных. При этом мы можем определить кастомные операции для своих типов. 8 - 9 -Плюсы: 10 -- Мы не выполняем приведение типов, не пытаемся самостоятельно определять реализацию в зависимости от типа. 11 -- Также мы теряем скорость выполнения на Expression Tree, по факту работая с нативными операциями через Generic. 12 -- В случае, если для указанного типа не будет зарегистрирован класс мат. операций, то мы получим ошибку при разрешении зависимостей. - Дата
-
... ... @@ -1,1 +1,0 @@ 1 -2020-08-24 14:58:09.297