Видео курс Асинхронное программирование в Java - видео курсы ITVDN
ITVDN: курсы программирования
Видеокурсы по
программированию
Подписка

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

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

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

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

Асинхронное программирование в Java

О курсе

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

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

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

Для понимания материалов данного курса потребуются знания языка Java на уровне «Java Углубленный», базовые знания Spring Framework.

По завершению данного курса вы научитесь:

  • Реализовывать в своих приложениях принципы асинхронности и многопоточности для быстрой и неблокирующей работы приложения.
  • Создавать и запускать потоки.
  • Использовать ExecutorService и ThreadPool для управления потоками.
  • Использовать Fork/Join Framework для решения проблемы с использованием параллельного подхода «разделяй и властвуй».
  • Работать с потокобезопасными коллекциями.
  • Использовать Future и CompletableFuture для работы с асинхронными задачами.
  • Ловить и обрабатывать исключения, полученные при выполнении асинхронного кода.
  • Использовать асинхронность в веб-приложениях на Spring Framework.
  • Управлять выполнением задач, создавая пользовательский планировщик задач.
  • Реализовывать в приложении паттерны проектирования Producer-Consumer и Scatter-Gather.
Читать дальше...
Посмотреть бесплатный урок

Этот курс входит в специальности:

Предварительные Требования

Java 8 (или выше), базовые знания Spring Framework.

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

Вы научитесь

  • Создавать и запускать потоки.
  • Использовать ExecutorService и ThreadPool для управления потоками.
  • Использовать Fork/Join Framework для решения проблемы с использованием параллельного подхода «разделяй и властвуй».
  • Работать с потокобезопасными коллекциями.
  • Использовать Future и CompletableFuture для работы с асинхронными задачами.
  • Ловить и обрабатывать исключения, полученные при выполнении асинхронного кода.
  • Использовать асинхронность в веб-приложениях на Spring Framework.
  • Управлять выполнением задач, создавая пользовательский планировщик задач
  • Реализовывать паттерны проектирования Producer Consumer и Scatter-Gather.
Читать дальше...
Скачать материалы курса Для получения материалов курса нужно авторизоваться
Получить сертификат Для получения сертификата нужно авторизоваться
  • Длительность: 4 ч 49 м
  • Уроков: 10
  • Язык: русский

Что входит в курс

  • 10 видео уроков
  • Домашние задания
  • Тестирование
  • Сертификат

×

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

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

Войдите или зарегестрируйтесь для того чтоб продолжить просмотр бесплатного видео

По завершению урока слушатель ознакомится с понятием многопоточного программирования, разберёт понятие потоков, их состояния, научится создавать потоки и их использовать. Также познакомится с базовыми понятиями для работы с потоками, такими как мьютекс, монитор и семафор, научится использовать ключевое слово synchronized, а также использовать семафоры для одновременного доступа к ресурсам из нескольких потоков.

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

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

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

На этом уроке вы узнаете, как работать с группой потоков с помощью ThreadPool. Мы создадим свою реализацию пула потоков и разберём как происходит управление жизненным циклом потоков с помощью ExecutorService. В конце урока вы узнаете о таком фреймворке как Fork/Join, зачем он нужен и научитесь его применять на практике.

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

На этом уроке вы познакомитесь с набором коллекций, которые более эффективно работают в многопоточной среде, нежели стандартные универсальные коллекции из java.util пакета. Будут рассмотрены реализации часто используемых коллекций. В конце урока вы сможете ознакомиться с блокирующими очередями, которые используются для работы с пулами потоков.

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

На этом уроке вы более подробно познакомитесь с Future API. Напомним, что мы знаем об интерфейсе Future. Вы узнаете о новом классе для работы с асинхронными задачами CompletableFuture. Узнаете в чём разница между Future и CompletableFuture. Познакомитесь с некоторыми интерфейсами с пакета java.util.function, которые активно используются в CompletableFuture., а также научитесь создавать CompletableFuture.

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

На этом уроке вы более подробно познакомитесь с CompletableFuture. Поработаем с методами runAsync и supplyAsync. Разберём, что такое исключение в асинхронных задачах и как с ними работать. Также будет рассмотрена обработка исключений с помощью методов exceptionally и handle.

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

По завершению урока слушатель ознакомится с методами thenCombine и thenCompose, которые используются для комбинирования двух независимых и зависимых задач соответственно. Так же ознакомится с методами allOf и anyOf, которые используются для объединения более чем двух задач. А также увидит, как применять эти методы на практике.

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

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

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

По завершению урока слушатель ознакомится с SceduleExecutorService и научится создавать отложенные задачи с его помощью. Также изучит как использовать отложенный запуск методов в фреймворке Spring. Научится кастомизировать стандартный TaskScheduler, а также детально контролировать регистрацию задач через ScheduledTaskRegistrar.

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

По завершению урока слушатель ознакомится с такими паттернами проектирования как Producer Consumer и Scatter-Gather. Будет понимать, как работают различные инструменты, в основе которых лежат данные паттерны. Также ознакомится на практике с реализациями этих паттернов и сможет применять их в проектировании собственных многопоточных приложений.

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

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

DOU

Отзывы в DOU

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

Alexandr Zuev
Alexandr Zuev
5/5
Вирішив вивчити Android dev., дуже сподобалися лектори, особливо з курсу Java. Також великим плюсом є те, що ти можеш виконувати домашні завдання та тренуватися на практиці, а потім, навіть, мати якісь роботи у портфоліо. К цьому всьому можна ще отримати сертифікати з пройдених курсів. Раджу усім скористатися такою можливістю увійти в айті), адже курси від ITDVN, дійсно корисні.
Почитать оригинал
Facebook

Отзывы в Facebook

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

Ирина Василенко
Ирина Василенко
5/5
Была участницей акции «Изучай Web Testing бесплатно» на образовательном ресурсе ITVDN.Курс очень насыщенный, много примеров, что для меня важно! Преподаватель показал и рассказал доступно и понятно. Нашла много нового полезного в области тестирования!
Почитать оригинал
Google

Отзывы в Google

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

Дмитро Цюприк
Дмитро Цюприк
5/5
Замечательные курсы от ITVDN. Преподаватели объясняют сложные вещи простым языком. Начал проходить курс JavaScript стартовый, очень понравилось. Буду рекомендовать эту платформу знакомым.
Почитать оригинал
Студенты также смотрят
Java Углубленный
ПОДРОБНЕЕ
Java Базовый
ПОДРОБНЕЕ
Java Стартовый
ПОДРОБНЕЕ
SOLID принципы в Java
Автор: Андрей Фок
ПОДРОБНЕЕ
Unit тестирование в Java с JUnit
ПОДРОБНЕЕ

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

Библиотека современных 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