Параллельное программирование
ITVDN: курсы программирования
Видеокурсы по
программированию
Подписка

300+ курсов по популярным IT-направлениям

Выбери свою IT специальность

Подписка
Подписка

300+ курсов по популярным IT-направлениям

×

Вы открыли доступ к тесту! Пройти тест

Вы действительно хотите открыть доступ к тестированию по курсу C# Асинхронное программирование на 40 дней?

ВИДЕОУРОК №8. Параллельное программирование

Для просмотра полной версии видеокурса, онлайн тестирования и получения доступа к дополнительным учебным материалам купите курс Купить курс
Для просмотра всех видеокурсов ITVDN, представленных в Каталоге, а также для получения доступа к учебным материалам и онлайн тестированию купите подписку Купить подписку

Это первый урок курса, целью которого является ознакомление с основной терминологией, сферами использования и средствами асинхронного программирования. Важной частью этого и последующих уроков являются практические примеры применения методов асинхронного программирования для решения различных задач, поэтому студенту желательно установить одну из IDE, поддерживающих синтаксис C#.

Читать дальше...

Цель урока – ознакомление с шаблоном асинхронного программирования TAP (Task-based Asynchronous Pattern), сравнение его с уже рассмотренными шаблонами APM и EAP.

Также во время занятия вы вспомните, чем параллелизм отличается от конкурентности и какие средства для них содержит TPL. Подробно рассмотрим классы Task/Task<TResult>, после чего повторим, чем reference-типы отличаются от value-типов и познакомимся с ValueTask/ValueTask<TResult>. Мы поговорим о шаблонах Абстрактная Фабрика и Фабричный метод, чтобы лучше понять, что такое TaskFactory/TaskFactory<TResult> и как им пользоваться. Закончив планирование задач, рассмотрим их отмену (Cancellation) и продолжение (TaskContinuation).

Читать дальше...

Цель урока - разобраться в том, что представляют собой ключевые слова async/await, рассмотреть их техническую реализацию, чтобы лучше понимать, как работает ваш асинхронный код. Освежим в памяти теоретические знания о законченном автомате (state machine) и рассмотрим пример, сгенерированный компилятором. Также мы познакомимся с типами, которые могут возвращать асинхронные методы и разберем на примерах, как и когда ими следует пользоваться. Познакомимся с контекстом выполнения и контекстом синхронизации, посмотрим, как они используются в асинхронном конечном автомате.

Читать дальше...

На этом уроке мы продолжим разбираться, как и благодаря чему работает уже рассмотренный нами асинхронный законченный автомат. Также мы упомянем, что такое Thread и ThreadPool и как они участвуют в выполнении асинхронного кода. Поговорим о настройке продолжения задачи (TaskContinuation), планировщике задач (TaskScheduler) и контексте синхронизации, рассмотрим примеры работы с большим количеством задач.

Читать дальше...

Цель этого занятия – понять, в каких случаях возникает deadlock и как его можно избежать. Также мы упомянем теорию блокировки и синхронизации в многопоточной среде, рассмотрим реализацию этих средств в .NET (например, монитор, семафор, мьютекс и другие). Также мы вспомним, какие ошибки мы видели, вызывая асинхронный код, и как такие ошибки можно обработать.

Читать дальше...

Цель этого урока – знакомство с потокобезопасными коллекциями, их назначением и строением.
В ходе урока мы повторим теорию о коллекциях, рассмотрим, как построены базовые коллекции, которая скрывается за ключевым словом foreach и зачем нам нужен итератор. Также мы познакомимся с потокобезопасными коллекциями из пространства имен System.Collections.Concurrent и разберемся, как они работают. Кроме того, рассмотрим тип Channel, который может использоваться в асинхронном коде без дополнительных средств синхронизации.

Читать дальше...

Целью этого урока является подведение всего, что мы знаем о создании и выполнении задач, а также более детальное ознакомление с планировщиком задач.

В ходе урока мы поговорим об основных методах и свойствах планировщиков задач, познакомимся с существующими реализациями и тем, как они планируют и выполняют работу. Разберемся, чем задачи верхнего уровня, дочерние и вложенные задачи. Вспомним, чем контекст синхронизации и как он может использоваться планировщиком задач. Также напишем собственный планировщик задач, чтобы на практике подытожить все полученные знания.

Читать дальше...

Целью этого урока является ознакомление с подходами к параллельным программированием, какие задачи можно решить с помощью этих подходов и где их использовать нецелесообразно.

В ходе урока мы вспомним, чем конкурентность отличается от параллелизма, узнаем, что такое распределенное программирование. Также поговорим о видах многозадачности – вытеснительной и не вытеснительной. Познакомимся с разными средствами класса Parallel и методами PLINQ. В конце урока рассмотрим различные шаблоны параллельной и асинхронной обработки данных и выполнения операций, которые можно использовать для решения задач.

Читать дальше...
ПОКАЗАТЬ ВСЕ

Отзывы наших студентов

DOU

Отзывы в DOU

4,9/5 - 200 отзывов

Володимир Бурцев
Володимир Бурцев
5/5
Я вже не новачок у розробці. Проте вивчав Java, а працювати почав на іншій мові. Багато чого важливого і навіть базового позабував, а тут за допомогою ретельного проходження по всім пунктам і аспектам згадую все що потрібно і не висмикуючи з контексту, а послідовно щоби нічого не пропустити. Тут дуже багато окремих гілок за обраним напрямком. Був би час 🙂 PS записи трошки вкрилось пилом і часто зустрічаю помилки/обмовки, але в цілому на якість це не впливає. РАДЖУ!
Почитать оригинал
Facebook

Отзывы в Facebook

5,0/5 - 707 отзывов

Маис Расулов
Маис Расулов
5/5
Отличный курс, советую всем
Почитать оригинал
Google

Отзывы в Google

4,9/5 - 836 отзывов

Юрий Казимирко
Юрий Казимирко
5/5
Прошел курс C# 8.0 СТАРТОВЫЙ. Курс классный! Преподаватель этого курса Александр Шевчук. У него классная чёткая подача учебного материала. Понравилась учебная платформа (сайт) ITVDN, она удобная.
Почитать оригинал

Покупай подпискус доступом ко всем курсам и сервисам

Библиотека современных IT знаний в удобном формате

Выбирай свой вариант подписки в зависимости от задач, стоящих перед тобой. Но если нужно пройти полное обучение с нуля до уровня специалиста, то лучше выбирать Базовый или Премиум. А для того чтобы изучить 2-3 новые технологии, или повторить знания, готовясь к собеседованию, подойдет Пакет Стартовый.

Стартовый
  • Все видеокурсы на 3 месяца
  • Тестирование по 10 курсам
  • Проверка 5 домашних заданий
  • Консультация с тренером 30 мин
59.99 $
Оформить подписку
Премиум Plus
  • Все видеокурсы на 1 год
  • Тестирование по 24 курсам
  • Проверка 20 домашних заданий
  • Консультация с тренером 120 мин
  • Скачивание видео уроков
149.99 $
199.99 $
Оформить подписку
Акция
Базовый
  • Все видеокурсы на 6 месяцев
  • Тестирование по 16 курсам
  • Проверка 10 домашних заданий
  • Консультация с тренером 60 мин
89.99 $
Оформить подписку

Вопросы и ответы

В чём преимущество онлайн курсов программирования по сравнению с оффлайн?
Какова стоимость обучения?
Сколько времени понадобится, чтобы овладеть программированием?
Сколько времени понадобится, чтобы овладеть IT-специальностью?
С какого курса начинать обучение?
Как управлять своим временем и организовать эффективное онлайн-обучение с тренером?
Есть ли у вас помощь с трудоустройством после окончания обучения?
Возможно ли персональное обучение с тренером ITVDN?
С какого возраста можно учиться на платформе?
Нужны ли знания английского языка для обучения?
Какого уровня можно достичь, пройдя обучение по специальности?
Когда закончится подписка, что дальше? Доступа к урокам не будет?
Суммируются ли скидки на покупку подписки?
В чём преимущество онлайн курсов программирования по сравнению с оффлайн?

Онлайн курсы имеют ряд преимуществ перед оффлайн форматом:

  1. Независимость от локации. Онлайн позволяет учиться где угодно.
  2. Сохранение денег и времени на дорогу. Вы экономите время и деньги с поездок на курсы и обратно.
  3. Онлайн курсы дешевле. Нет нужды в помещении и ноутбуках для студентов, поэтому стоимость ниже.
  4. Удобный темп обучения, постоянный доступ к информации. Обучение в вашем темпе в любом месте 24/7. Также есть доступ к записанным урокам, чего нет в оффлайн формате.
Какова стоимость обучения?

На ITVDN есть 2 формата обучения: Live Online и видео курсы. Цена обучения зависит от выбранного вами способа обучения.

Если вы хотите учиться самостоятельно в формате видео курсов, стоимость обучения составит в среднем 10-15 USD в месяц в зависимости от выбранного вами пакета подписки.

Live Online – это онлайн обучение с тренером в группах вместе с другими студентами. Учеба в данном формате стоит в среднем 6-7 USD за один час.

Сколько времени понадобится, чтобы овладеть программированием?

Зависит от того, сколько внимания программированию вы будете выделять ежедневно, какой именно это язык и какой у вас опыт кодинга. Среднее время на овладение одним языком при условии регулярных занятий хотя бы 2 часа в день:

  • новички – от 3 до 6 месяцев;
  • те, кто имеет базовые знания другого языка – от 1 до 3 месяцев;
  • профессиональные программисты – до 1 месяца.

Самый лучший вариант инвестиции времени – 8 часов ежедневно (20% теории + 80% практики). Больше практики – быстрее овладеете программированием.

Сколько времени понадобится, чтобы овладеть IT-специальностью?

Для овладения IT-специальностью нужно выделить не менее 500 часов, из которых около 100 часов – на просмотр видео уроков или посещение онлайн занятий с ментором, а 400 – на выполнение практических заданий по пройденным темам.

В зависимости от того, сколько времени вы готовы выделять на обучение в день, вы сможете пройти программу за 3-8 месяцев. Если у вас есть определенная база знаний по IT, количество необходимого времени будет меньшим.

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

С какого курса начинать обучение?

Начинать следует с тех, которые содержат в названии слово “Стартовый”. Такие курсы имеют вводный материал для знакомства с языком или технологией.

Если вы планируете учиться по конкретной специальности в формате видео курсов, перейдите на страницу специальности и прокрутите до заголовка “Видео курсы по специальности …”. Ниже будет список видео курсов, отсортированных в порядке необходимости изучения.

Ещё ниже вы найдете Roadmap по специальности – путеводитель, на котором изображены видео курсы в виде дерева, что также легко сориентирует вас в последовательности прохождения курсов.

Как управлять своим временем и организовать эффективное онлайн-обучение с тренером?

Если вы выбираете Live Online обучение с тренером, всё очень просто:

  • посещайте все занятия, вовремя выполняйте д/з;
  • дополнительно смотрите видео уроки на ITVDN;
  • после каждого урока проходите краткое тестирование;
  • практикуйтесь в Интерактивном практикуме;
  • общайтесь с одногруппниками в ходе решения д/з, задавайте вопросы ментору на уроках и вне их;
  • в конце каждого курса сдавайте экзамен на TestProvider (и получайте Сертификаты);
  • в конце всего обучения проходите экзамен по специальности и получите диплом.
Есть ли у вас помощь с трудоустройством после окончания обучения?

Мы имеем специальный раздел – “Вакансии”, который помогает нашим студентам искать первую работу в IT. Детальнее о возможностях и о разделе по ссылке.

А для тех, кто учится онлайн с ментором, у нас дополнительно предусмотрена индивидуальная помощь HR-специалиста по подготовке к трудоустройству с первого дня обучения и до получения первого job-оффера. Она включает в себя помощь в оформлении соцсетей, подготовке резюме, проведении пробного собеседования, предоставлении советов по поиску работы и самопрезентации и т. д.

Возможно ли персональное обучение с тренером ITVDN?

К сожалению, данная услуга ITVDN не предусмотрена, однако вы можете заказать индивидуальную консультацию с нашим ментором. Подробности вы найдете по ссылке.

С какого возраста можно учиться на платформе?

На ITVDN отсутствуют курсы для детей, поэтому комфортный возраст для начала обучения по нашим материалам – от 14 лет.

Нужны ли знания английского языка для обучения?

Никаких требований к вашему уровню английского мы не выдвигаем, поскольку все учебные материалы идут на русском или украинском языках. При этом базовые знания английского будут полезны для комфортного поиска информации в гугле, чтения документаций в интернете и прочего.

Какого уровня можно достичь, пройдя обучение по специальности?

На ITVDN можно пройти полное обучение с нуля до специалиста уровня Trainee/Junior. Если вы уже практикующий разработчик, наши видео курсы помогут углубить ваши знания до уровня Middle.

Когда закончится подписка, что дальше? Доступа к урокам не будет?

После окончания действия вашей подписки доступ к видео курсам, к сожалению, будет закрыт. Однако вы сможете пользоваться теми учебными материалами, которые вы скачали на свой девайс во время обучения.

Суммируются ли скидки на покупку подписки?

Нет, скидки не суммируются.

Notification success