Reflection.Emit: секретний соус на котрому працює DI, ORM, Mappers, Mocking Libs, WCF Clients

  • Видео
  • О видео
  • Скачать
  • Поделиться

Reflection.Emit: секретний соус на котрому працює DI, ORM, Mappers, Mocking Libs, WCF Clients

#DevJungles #AndriiPodkolzin #Metaprogramming Зараз все частіше кричать про Source Generation, і справді деякі фічи можливо зробити за допомогою Compile Time Source Generation і це буде мати ряд переваг. Але разом і з тим буде і ряд недоліків: ну хоч розбийся ти, а в Compile-Time в тебе набагато меньше данних про те, що відбувається і якісь речі зробити принципово неможливо. Тому треба знати і про такий інструмент, як Reflection.Emit, що може генерувати класи під час самого виконення программи. Це може стати у нагоді в багатьох випадках: один з них доречі, це генерація різних клієнтів, що з розвитком мікросервісів(1) і інтеграцій з third-party(2) потрібні все частіше. За допомогою цієї фічи працюють: - MS DI - EF (ORM) - Mappers - Mocking Libraries (Moq, NSubstitute, etc) - WCF Clients - Orleans - Probably something elese Telegram канал Dev Jungles - https://t.me/DevJungles Підтримати канал можливо за допомогою: - Підписки на Patreon: patreon.com/user?u=79336362 - Спонсорства на YouTube - Прямим переказом на карту монобанку Dev Jungles YouTube Channel Fund https://send.monobank.ua/jar/7iAP3sZkm9 Номер карты банки: 5375 4112 0230 1466 - Или криптой: BTC - 18C3jsFYwviN5FvzpAt4uMWRfUeVKvdWxy ETH - 0x2903f63ba9009732272e91a299053b9d7b623216 USDT on ERC20 - 0x2903f63ba9009732272e91a299053b9d7b623216 USDT on TRC20 - TSmS5RzQKbWdxZkoM2oRo9HK8FYBaq744T LTC - LN3CkrnvZLZTXDUhqTy1gUKMVpLjEPA4G2 DOGE - DPwon439jf3axVSBwyuXso6z7CivuJF655 AAVE - 0x2903f63ba9009732272e91a299053b9d7b623216 Waves - 3P8D57Zw7CrqW2o7dHpvZR2UzAzQRFA2kZd Я думаю в мене більше тих хто сам проводе спібесіди і тому пропоную саме з цього боку оцінювати відео. - Чи є коректними ті питання, що я задаю? - Ча корисні вони для розуміння рівня кандидата? - Чи підходять вони під рівень кандидата? Мені насамперед хочеться підвищити рівень співбесід в індустрії. Бо це є проблема. При чому, і я наполягаю, що в співбесіді страшніше не найняти когось крутого чим найняти ідіота. Ідіот не наробить багато шкоді, його можна швидко звільнити. А от не найнятий геній... ...а ще це гірше трекається. Сподіваюсь ви зможете взяти собі щось з ідей та підходів та впровадити на своїх інтерв'ю.
2, 464   |   1 год. назад  |   156 - 0
 

Reflection.Emit: секретний соус на котрому працює DI, ORM, Mappers, Mocking Libs, WCF Clients

Скачайте изображение (превью) выбрав качество


320x180 480x360 640x480 1280x720

#DevJungles #AndriiPodkolzin #Metaprogramming

Зараз все частіше кричать про Source Generation, і справді деякі фічи можливо зробити за допомогою Compile Time Source Generation і це буде мати ряд переваг.
Але разом і з тим буде і ряд недоліків: ну хоч розбийся ти, а в Compile-Time в тебе набагато меньше данних про те, що відбувається і якісь речі зробити принципово неможливо.

Тому треба знати і про такий інструмент, як Reflection.Emit, що може генерувати класи під час самого виконення программи.
Це може стати у нагоді в багатьох випадках: один з них доречі, це генерація різних клієнтів, що з розвитком мікросервісів(1) і інтеграцій з third-party(2) потрібні все частіше.

За допомогою цієї фічи працюють:
- MS DI
- EF (ORM)
- Mappers
- Mocking Libraries (Moq, NSubstitute, etc)
- WCF Clients
- Orleans
- Probably something elese

Telegram канал Dev Jungles -

Підтримати канал можливо за допомогою:
- Підписки на Patreon: patreon.com/user?u=79336362
- Спонсорства на 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

Я думаю в мене більше тих хто сам проводе спібесіди і тому пропоную саме з цього боку оцінювати відео.
- Чи є коректними ті питання, що я задаю?
- Ча корисні вони для розуміння рівня кандидата?
- Чи підходять вони під рівень кандидата?

Мені насамперед хочеться підвищити рівень співбесід в індустрії. Бо це є проблема.
При чому, і я наполягаю, що в співбесіді страшніше не найняти когось крутого чим найняти ідіота.
Ідіот не наробить багато шкоді, його можна швидко звільнити.
А от не найнятий геній... ...а ще це гірше трекається.

Сподіваюсь ви зможете взяти собі щось з ідей та підходів та впровадити на своїх інтерв'ю.


Reflection.Emit: секретний соус на котрому працює DI, ORM, Mappers, Mocking Libs, WCF Clients

Чтобы скачать видео "Reflection.Emit: секретний соус на котрому працює DI, ORM, Mappers, Mocking Libs, WCF Clients" передвинте ползунок вправо



Покажите вашим друзьям, добавьте в соцсети

Ссылка на страницу с видео:

 

Ссылка HTML на страницу с видео:

 

Код для вставки плеера:


  • Комментарии

Комментарии ФБ


Уважаемые друзья!

Источником всего видеоконтента, в том числе проигрывающегося на страницах ресурса ruslar.me, является сторонний видео ресурс, а именно общедоступный видеохостинг YouTube.com, предоставляющий открытый доступ к своему видеоконтенту (используя открытую и общедоступную технологию video API3 youtube.com)!

Проблемы с авторскими правами

Если вам принадлежат авторские права на данное видео, которое было загружено без вашего согласия на YouTube.com, перейдите на страницу этого видео сайта YouTube.com , нажмите на ссылку под проигрывателем Ещё -> "Пожаловаться" -> "Нарушение моих прав" и в выпадающем меню, выбирите, что именно нарушается и нажмите кнопку "Отправить".



Неприемлемый контент

Чтобы сообщить о неприемлемом видео, перейдите на YouTube, нажмите на ссылку под проигрывателем Ещё -> "Пожаловаться" и выберите в "Сообщить о нарушении" что именно вас не устраивает в этом видео. Подробнее о наших правилах читайте в Условиях использования.