Найти в Дзене
.Net Review

C# dynamic. Зачем нужен? Когда использовать?

Оглавление

C версии C# 3.0 был введен новый тип данных - dynamic. Что это, зачем он и когда использовать? Подробнее в этой статье.

Что такое тип dynamic?

Dynamic - динамический тип данных. Это такой тип данных, который не имеет привязанного типа и в любой момент может быть переопределен другим типом.

Зачем нужен? Когда использовать?

К примеру, вам необходимо выполнить разные реализации относительно типа данных переменной. Для сокращения кода можно использовать dynamic c операторами сравнения.

Но почему никто их не использует?

Есть большие минусы. Тип данных dynamic довольно ресурсозатратный. Чем сложнее у вас логика, тем сложнее отлаживать приложение. IntelliSence не имеет проверок для dynamic. Так как этот тип данных определяется в процессе работы приложения. Это значит, что необходимо уделять больше времени на проверку кода. Весь функционал типа вам придется писать самим, без помощи IntelliSence.

Пример

Пример использования dynamic.

-2

Для разных типов данных можно сделать один метод, который будет обрабатывать их всех.

-3

Результат выполнения.

Итог

Очень спорное решение использовать dynamic. Нужно всё взвесить для того, чтобы точно решить, нужен ли он вам. Если вы очень спешите, и вам срочно нужно сделать функционал, где необходимо преобразование на лету, то этот тип данных может быть решением. Иначе, лучше его не использовать. Лучше затратить больше времени и качественно реализовать функционал через обобщения или реализации отдельных методов.

Телеграмм канал: https://t.me/dotnetreview