Учебный курс «Параллелизм и асинхронность»
В учебном курсе раскрываются основы многопоточности и задач, подробно обсуждаются принципы асинхронности и асинхронные функции С#.
В учебном курсе раскрываются основы многопоточности и задач, подробно обсуждаются принципы асинхронности и асинхронные функции С#.

Хакатон приурочен к 80-летию Победы в Великой Отечественной войне и посвящен выявлению секретного ключа ассоциативного механизма защиты данных с применением технологий параллельного программирования на языке C#.
Статья посвящена методам управления состояниями асинхронных операций на платформе .NET с целью минимизации аллокаций в управляемой памяти. Проведён анализ типичных сценариев использования асинхронного программирования в клиент-серверных приложениях. Основное внимание уделено следующим аспектам: синхронное завершение асинхронных функций, стратегии кеширования задач Task и Task<T>, применение типов ValueTask и ValueTask<T>, реализации интерфейса IValueTaskSource<T>. Приведены результаты тестирования различных типов асинхронных методов на примере вычисления функции Аккермана. Статья предназначена для разработчиков программного обеспечения, работающих над созданием высокопроизводительных и отзывчивых .NET-приложений, в которых критически важна оптимизация ресурсоёмких асинхронных операций.
В рамках трансляций дается краткое и сжатое изложение сути UML и особенностей применения этого языка в современном процессе разработки программного обеспечения. Описываются все главные типы диаграмм UML, рассказывается, для чего они предназначены и какие нотации применяются при их создании и чтении. Это диаграммы классов, последовательности, объектов, пакетов, развертывания, прецедентов, состояний, деятельности, составных структур, компонентов, обзора взаимодействия, коммуникационные и временные.

Хакатон посвящен решению транспортной задачи с применением технологий параллельного программирования на языке C#.
Ссылки на теоретические материалы.
Ссылки на практические материалы.
Методические указания по выполнению практических заданий по составлению запросов на языках SQL и LINQ.
В учебном курсе раскрываются многопоточные API-интерфейсы и конструкции, направленные на использование преимуществ многоядерных процессоров: Parallel LINQ, класс Parallel, параллелизм задач, работа с AggregateException, параллельные коллекции.
Набор инструментов для разработки, отладки, управления версиями, работы с базами данных, тестирования производительности и др.