Event cover 'HolyJS 2024 Autumn'

HolyJS 2024 Autumn

Saint Petersburg, Russia, 14.11.2024 10:00 (+03:00)

Event cover 'reWorked: Москва 19.10.24'

reWorked: Москва 19.10.24

Moscow, Russia, 19.10.2024 15:00 (+03:00)

Cover of event Встреча SpbDotNet №102

Встреча SpbDotNet №102

Thu, 17 October 2024, 19:00 (GMT+03:00)
Russia, Saint Petersburg, Выборгская набережная, д. 47 (БЦ «Гренадерский»)
Free

Tags:

Приглашаем самых любознательных на тёплую осеннюю встречу сообщества. В кругу единомышленников мы будем искать ответ на заветный вопрос: чем отличается АОП от AOT. Вся эта идиллия будет проходить в уютном офисе наших друзей из ATI.SU

«Использование АОП в .NET» — Дмитрий Егоров

Аспектно-ориентированное программирование (АОП) — широко распространённая практика во многих популярных фреймворках, таких как Angular или Spring. В ASP.NET мы привычно используем этот архитектурный подход при работе с контроллерами, что натолкнуло нас на мысль масштабировать АОП на другие слои приложений.

Благодаря подходу АОП мы получаем возможность декларативно управлять поведением кода и инкапсулировать сквозную функциональность, не засоряя основную логику бизнес-кейсов. В .NET существует как минимум четыре механизма для реализации АОП: классические объектно-ориентированные декораторы, посткомпиляция, динамические прокси, а также новая технология Interseptor в C# 12.

Дмитрий расскажет о своём опыте использования каждого из этих механизмов АОП, их преимуществах, ограничениях и особенностях. Кроме того, затронет вопрос перехвата зависимостей из контейнера внедрения зависимостей (DI) для реализации внутренних механизмов АОП с целью обеспечения гибкости и расширяемости кода.

Об авторе

Разрабатывает продукт Nocode.ru и поддерживает инфраструктурные сервисы, которые используют разные команды в компании. В свободное время читает лекции на курсах по программированию в УрФУ.

«Native AOT. Возможности и ограничения» — Андрей Порожняков

Иногда .NET-приложения запускаются дольше, чем нужно. Это связано с особенностями JIT-компиляции — при каждом старте IL-код компилируется в машинные инструкции. Проблема становится заметной, когда приложения запускаются часто, например, при реализации FaaS.

Решением может стать ahead-of-time, или AOT-компиляция. Это одна из функций, над которой сейчас работает группа ASP.NET Microsoft. Она генерирует машинные инструкции на этапе сборки приложения, и можно обойтись без IL-кода. Но такой подход предъявляет ряд требований к приложению и разработке.

Андрей расскажет, как ускорить запуск приложения за счёт AOT-компиляции. Рассмотрит требования и ограничения публикации Native AOT. Отдельно скажет о поддержке Minimal API и генераторов исходного кода, о плюсах, минусах и практической пользе технологии.

Об авторе

.NET-разработчик, специализируется на разработке Web API. Автор серии докладов по Minimal API.