Generic'и в C# работают лучше, чем в Java и вот почему. Covariance/Contravariance и WinDBG
- Видео
- О видео
- Скачать
- Поделиться
Generic'и в C# работают лучше, чем в Java и вот почему. Covariance/Contravariance и WinDBG
6, 474 | 2 год. назад | 318 - 0
#DevJungles #CSharp #ityoutubers
Telegram канал Dev Jungles -
Поддержать канал можно:
- Спонсорством на YouTube
- Переводом на карту или пополнением банки монобанка:
Dev Jungles YouTube Channel Fund
Номер карты банки:
5375 4112 0230 1466
- Или криптой:
BTC - 18C3jsFYwviN5FvzpAt4uMWRfUeVKvdWxy
ETH - 0x2903f63ba9009732272e91a299053b9d7b623216
USDT on ERC20 - 0x2903f63ba9009732272e91a299053b9d7b623216
USDT on TRC20 - TSmS5RzQKbWdxZkoM2oRo9HK8FYBaq744T
LTC - LN3CkrnvZLZTXDUhqTy1gUKMVpLjEPA4G2
DOGE - DPwon439jf3axVSBwyuXso6z7CivuJF655
AAVE - 0x2903f63ba9009732272e91a299053b9d7b623216
Waves - 3P8D57Zw7CrqW2o7dHpvZR2UzAzQRFA2kZd
Полный стрим тут:
Сейчас Microsoft штампует версии C# одна за другой, я, если честно, уже даже не успеваю за ними следить. А вот CLR развивается не столь агрессивно. А ведь раньше они были тесно связанны.
Для того что бы такое могло происходить команда разработки делает хитрый трюк: новые языковые фишки компилируются в IL код, который поддерживается старыми версиями runtime.
Что бы понять это нам нужна были самые крутые инструменты отладки. Их сейчас редко используют, но они все еще круты: это WinDBG и SOS. Ну и Disassembly никуда не делся. Он нам сегодня тоже будет нужен.
Generic'и - это мощный инструмент для обобщения кода и повышения его гибкости и повторного использования. Однако, существует ряд проблем, связанных с использованием Generic'ов, таких как производительность, безопасность типов и работа с Covariance/Contravariance.
В C# реализация Generic'ов осуществляется через JIT-компилятор, который генерирует код для каждого типа во время выполнения программы. Это позволяет существенно повысить производительность и избежать накладных расходов на дополнительные проверки типов во время работы программы.
Кроме того, в C# доступны функции Covariance/Contravariance, которые позволяют передавать более общие типы, чем ожидается. Это улучшает гибкость и повторное использование кода, что не так явно поддерживается в Java.
Для улучшения работы с Generic'ами в C# также можно использовать инструменты, такие как WinDBG, которые помогают оптимизировать производительность и отлаживать ошибки.
В целом, использование Generic'ов в C# дает множество преимуществ и является более эффективным, чем в Java. Если вы хотите улучшить производительность и гибкость вашего кода, то использование Generic'ов и Covariance/Contravariance в C# может быть отличным решением.
Тайм-коды:
00:00 - Тизер
00:43 - generic
04:39 - Пример
14:33 - Интересный момент
18:02 - generic method
Чтобы скачать видео "Generic'и в C# работают лучше, чем в Java и вот почему. Covariance/Contravariance и WinDBG" передвинте ползунок вправо
- Комментарии
Комментарии ФБ