نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیویی برای نمایش وجود ندارد.
توضیحات دوره:
برنامه نویسی ناهمزمان همان چیزی است که CompletionStage API ، از JDK ، برای شما به ارمغان می آورد. این دوره تمام الگوهایی را که شما برای ایجاد خطوط لوله پردازش داده های ناهمزمان کارآمد ، از جمله کنترل رشته و بازیابی خطا ، نیاز دارید ، پوشش می دهد. به عنوان یک توسعه دهنده جاوا ، امکان ایجاد سیستم های ناهمزمان به شما امکان می دهد برنامه های بسیار کارآمد ، که هم به توان و هم به عملکرد نیاز دارند را توسعه دهید. در این دوره ، Java Fundamentals: Asynchronous Programming Using CompletionStage ، شما تمام الگوهایی را که این API برای شما آورده است خواهید آموخت. ابتدا مفاهیم برنامه نویسی ناهمزمان را یاد خواهید گرفت: وظایف ، تماس های غیر مسدود کننده و سیستم های چند رشته ای. سپس ، نحوه ساخت خطوط لوله پردازش داده را مشاهده خواهید کرد که در آن تکمیل اولین کار به طور خودکار باعث اجرای یک کار بعدی می شود و داده ها را به آن منتقل می کنید. سرانجام ، خواهید دید که چگونه می توان با کنترل اجرای هر کار در بخش مناسب ، سیستم های عملکردی ایجاد کرد. تسلط بر همه اینها به شما کمک می کند تا سیستم های ناهمزمان عملکردی و بدون خطا ایجاد کنید و تنها وابستگی به خود JDK باشد.
سرفصل ها و درس ها
بررسی اجمالی دوره
Course Overview
-
بررسی اجمالی دوره
Course Overview
معرفی وظایف ناهمزمان و همزمان
Introducing Asynchronous vs. Concurrent Tasks
-
مقدمه ای بر این دوره ، چه چیزی می خواهید یاد بگیرید؟
Introduction to the Course, What Are You Going to Learn?
-
شما کی هستید؟ برای پیگیری این دوره چه چیزی باید بدانید؟
Who Are You? What Should You Know to Follow this Course?
-
دستور کار دوره
Agenda of the Course
-
دستور کار این ماژول
Agenda of this Module
-
تعریف واژگان فنی برنامه نویسی ناهمزمان
Defining the Technical Vocabulary of Asynchronous Programming
-
استفاده از الگوی مجری برای راه اندازی وظایف در سایر بخش ها
Using the Executor Pattern to Launch Tasks in Other Threads
-
تجزیه و تحلیل رفتار الگوی مجری
Analyzing the Behavior of the Executor Pattern
-
تجزیه و تحلیل تفاوت بین همزمان و ناهمزمان
Analyzing the Difference Between Concurrent and Asynchronous
-
درک مسدود کردن تماس ها و اینکه چرا باید از آنها جلوگیری کنید
Understanding Blocking Calls and Why You Should Avoid Them
-
تجزیه و تحلیل الگوهایی که یک API ناهمزمان باید ارائه دهد
Analyzing the Patterns an Asynchronous API Should Provide
-
درک ماهیت همزمان الگوی ناظر
Understanding the Synchronous Nature of the Observer Pattern
-
مقایسه سیستم های مبتنی بر رویداد و پیام
Comparing Event Driven and Message Driven Systems
-
بسته بندی ماژول
Module Wrap Up
تنظیم عملیات ناهمزمان با CompletionStage
Setting up an Asynchronous Operations with CompletionStage
-
معرفی ماژول و دستور کار
Introduction to the Module and Agenda
-
تعریف یک کار
Defining a Task
-
استفاده از قابلیت اجرا برای ایجاد وظایف
Using Runnable to Create Tasks
-
استفاده از Callable برای ایجاد وظایف و راه اندازی آنها در یک موضوع دیگر
Using Callable to Create Tasks and Launch Them in Another Thread
-
بدست آوردن یک شی Fut آینده با الگوی مجری
Getting a Future Object with the Executor Pattern
-
ایجاد آینده کامل از یک برنامه قابل اجرا یا یک منبع
Creating a CompletableFuture from a Runnable or a Supplier
-
کنترل موضوع اجرای یک منبع قابل اجرا یا یک منبع
Controlling the Thread Executing a Runnable or a Supplier
-
درک CompleteableFuture و CompletionStage
Understanding CompletableFuture and CompletionStage
-
مقایسه روش های آینده و آینده کامل
Comparing the Methods from Future and CompletableFuture
-
تکمیل یا جلوگیری از آینده کامل برای تولید یک ارزش
Completing or Obtruding a CompletableFuture to Produce a Value
-
تکمیل یا جلوگیری از آینده کامل برای پرتاب یک استثنا
Completing or Obtruding a CompletableFuture to Throw an Exception
-
معرفی نسخه ی نمایشی زنده ، راه اندازی اولین کار
Introducing the Live Demo, Launching a First Task
-
نسخه ی نمایشی: بررسی اینکه کدام موضوع در حال اجرا است
Demo: Checking in Which Thread a Task is Running
-
نسخه ی نمایشی: اجرای یک تأمین کننده به طور همزمان و نتیجه آن
Demo: Executing a Supplier Asynchronously and Getting its Result
-
نسخه ی نمایشی: به تأخیر انداختن اجرای یک تأمین کننده به طور همزمان
Demo: Delaying the Execution of a Supplier Asynchronously
-
نسخه ی نمایشی: اجبار برای تکمیل یک کار با استفاده از Complete و Obtrude
Demo: Forcing the Completion of a Task Using Complete and Obtrude
-
نسخه ی نمایشی: ایجاد و تکمیل یک Void CompletableFuture
Demo: Creating and Completing a Void CompletableFuture
-
بسته بندی ماژول
Module Wrap Up
راه اندازی یک کار در مورد تکمیل سایر کارها
Triggering a Task on the Completion of Other Tasks
-
معرفی ماژول و دستور کار
Introduction to the Module and Agenda
-
تنظیم خط لوله وظایف به عنوان الگوی کاهش فیلتر نقشه
Setting a Pipeline of Tasks as a Map Filter Reduce Pattern
-
ارسال نتیجه از یک تأمین کننده به یک عملکرد
Sending a Result from a Supplier to a Function
-
راه اندازی قابل اجرا ، مصرف کننده و عملکرد پس از کارهای موجود
Launching Runnable, Consumer, and Function After Existing Tasks
-
درک الگوهای زنجیره ای تک کار
Understanding Single Task Chaining Patterns
-
نوشتن آینده های کامل برای جلوگیری از مسدود کردن تماس ها
Composing CompletableFutures to Prevent Blocking Calls
-
راه اندازی وظایف در تکمیل دو کار
Triggering Tasks on the Completion of Two Tasks
-
راه اندازی وظایف در مورد تکمیل دو کار انجام شده
Triggering Tasks on the Completion of Two Completed Tasks
-
راه اندازی وظایف در تکمیل یکی از دو کار
Triggering Tasks on the Completion of One of Two Tasks
-
درک اینکه در کدام موضوع یک کار راه اندازی شده اجرا می شود
Understanding in Which Thread a Triggered Task is Executed
-
تجزیه و تحلیل موارد استفاده برای انتخاب اینکه کدام موضوع وظیفه را اجرا می کند
Analyzing Use Cases to Choose Which Thread is Executing What Task
-
بسته بندی الگوها برای کنترل موضوعات
Wrapping up the Patterns for Controlling Threads
-
معرفی نسخه ی نمایشی زنده ، ایجاد اولین وظایف
Introducing the Live Demo, Chaining the First Tasks
-
نسخه ی نمایشی: اجرای آخرین کار در یک موضوع خاص
Demo: Running the Last Task in a Special Thread
-
نسخه ی نمایشی: ساخت یک کار طولانی مدت با آینده کامل
Demo: Composing a Long Running Task with a CompletableFuture
-
نسخه ی نمایشی: بررسی اینکه کدام یک از عناصر Async اجرا شده است
Demo: Checking in Which Thread an Async Composition is Executed
-
نسخه ی نمایشی: نمایش نتیجه دو کار در یک کار سوم
Demo: Displaying the Result of Two Tasks in a Third One
-
نسخه ی نمایشی: نمایش نتیجه اولین کار انجام شده
Demo: Displaying the Result of the First Completed Task
-
بسته بندی ماژول
Module Wrap Up
مقابله با استثنا در خط لوله CompletionStage
Dealing with Exception in the CompletionStage Pipeline
-
معرفی ماژول و دستور کار
Introduction to the Module and Agenda
-
معرفی اینکه چگونه یک استثنا روی خط لوله کارها تأثیر می گذارد
Introducing How an Exception Affects a Pipeline of Tasks
-
درک اینکه چه اتفاقی می افتد وقتی یک استثنا مطرح می شود
Understanding What is Happening When an Exception is Raised
-
درک اینکه چگونه یک استثنای برجسته آینده کامل پذیر را کامل می کند
Undestanding How a Raised Exception Completes a CompletableFuture
-
گرفتن یک استثنا با الگوی استثنایی
Catching an Exception with the Exceptionally Pattern
-
اصلاح خط لوله وظایف برای گرفتن موارد استثنا
Modifying the Pipeline of Tasks to Catch Exceptions
-
مصرف یک استثنا با الگوی WhenComplete
Consuming an Exception with the WhenComplete Pattern
-
تبدیل یک استثنا با الگوی دستگیره
Transforming an Exception with the Handle Pattern
-
معرفی نسخه ی نمایشی زنده ، راه اندازی زنجیره ای که شکست بخورد
Introducing the Live Demo, Setting up a Chain That Fails
-
نسخه ی نمایشی: تنظیم الگوی استثنایی برای گرفتن یک استثنا
Demo: Setting up the Exceptionally Pattern to Catch an Exception
-
نسخه ی نمایشی: ثبت یک استثنا با استفاده از الگوی WhenComplete
Demo: Logging an Exception Using the WhenComplete Pattern
-
نسخه ی نمایشی: ارائه یک مقدار پیش فرض با الگوی دسته
Demo: Providing a Default Value with the Handle Pattern
-
بسته بندی ماژول
Module Wrap Up
ایجاد خطوط لوله ناهمزمان عملکردی با CompletionStage
Creating Performant Asynchronous Pipelines with CompletionStage
-
معرفی ماژول و دستور کار
Introduction to the Module and Agenda
-
معرفی مثال مشتری HTTP از جاوا 10
Introducing the HTTP Client Example from Java 10
-
ایجاد سرویس گیرنده HTTP و درخواست با استفاده از الگوی سازنده
Creating the HTTP Client and Request Using the Builder Pattern
-
تجزیه و تحلیل اینکه چرا درخواست HTTP باید ناهمزمان انجام شود
Analyzing Why the HTTP Request Should Be Made Asynchronously
-
درک هزینه انتقال وظایف به سایر موضوعات
Understanding the Cost of Moving Tasks to Other Threads
-
مقایسه الگوهای اجرایی و CompletableFuture
Comparing the Executor and the CompletableFuture Patterns
-
ایجاد HTTP درخواست ناهمزمان با استفاده از CompletableFuture
Making the HTTP Request Asynchronous Using CompletableFuture
-
استفاده از تأخیر شروع برای ایجاد زنجیره های پرهزینه از کارها
Using Delayed Start to Create Costly Chains of Tasks
-
نوشتن الگوی شروع تأخیر تأخیر پذیر Completable
Writing the CompletableFuture Delayed Start Pattern
-
معرفی نسخه ی نمایشی زنده ، تنظیم الگوی شروع تأخیری
Introducing the Live Demo, Setting up the Delayed Start Pattern
-
نسخه ی نمایشی: کنترل موضوعات با الگوی تاخیر شروع
Demo: Controlling Threads with the Delayed Start Pattern
-
Demo: تنظیم مثال HttpClient
Demo: Setting up the HttpClient Example
-
نسخه ی نمایشی: اجرای مثال HttpClient و کنترل رشته ها
Demo: Running the HttpClient Example and Controlling the Threads
-
Demo: به تأخیر انداختن شروع مثال HttpClient
Demo: Delaying the Start of the HttpClient Example
-
بسته بندی ماژول: سه ایده برای ساخت خطوط لوله اجرایی آسان
Module Wrapup: Three Ideas to Build Performant Async Pipelines
-
دوره را جمع کنید
Course Wrap Up
نمایش نظرات