آموزش کدنویسی چند رشته ای، موازی و ناهمزمان در جاوا مدرن

Multithreading,Parallel & Asynchronous Coding in Modern Java

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: آموزش استفاده از Multithreading در جاوا با استفاده از ParallelStreams API و CompletableFuture API با استفاده از رویکرد Hands-On. آموزش نوشتن کدی که نتایج سریع تری را با استفاده از apis مدرن در جاوا ارائه می دهد آموزش نوشتن کدهای برنامه نویسی ناهمزمان/موازی با استفاده از APIهای سبک عملکردی آموزش نوشتن کد برنامه نویسی موازی با استفاده از ParallelStreams آموزش نوشتن کدهای ناهمزمان با استفاده از Completablefuture آموزش نوشتن کدهایی که از تمام هسته ها استفاده می کند. در ماشین شما تکنیک ها و الگوهایی که از apis همزمانی مدرن برای بهبود عملکرد کلی کد استفاده می کند.

این دوره به گونه‌ای طراحی شده است که تجربه تئوری و کدنویسی نوشتن کدهای موازی و ناهمزمان با استفاده از ParallelStreams و CompletableFuture را در اختیار شما قرار دهد. پس از تکمیل این دوره، در نوشتن کدهای ناهمزمان/موازی در جاوا بسیار مسلط خواهید شد.

اگر به دنبال نوشتن کد جاوا با کارایی بالا هستید، این دوره آموزشی مناسب برای شماست. این دوره جدیدترین ویژگی‌های موجود در جاوای مدرن را پوشش می‌دهد که به شما کمک می‌کند کدهایی با عملکرد سریع بنویسید.

این دوره به صراحت API های زیر را در جاوا مدرن پوشش می دهد:

  • جریان های موازی

  • CompletableFuture

شروع به برنامه نویسی موازی و ناهمزمان

  • در این بخش، در مورد نیاز به یادگیری مفاهیم برنامه نویسی موازی و ناهمزمان در توسعه نرم افزار امروزی توضیح خواهم داد

  • به طور خلاصه در مورد تکامل APIهای همزمان در جاوا صحبت می کند

  • در مورد تفاوت بین همزمانی و موازی سازی توضیح دهید

راه اندازی پروژه دوره

  • در این بخش، پروژه پایه را برای کل دوره تنظیم خواهیم کرد.

Threads، Future، ForkJoin FrameWork و محدودیت های آن

  • در این بخش، در مورد Threads، Future API، ForkJoin FrameWork و محدودیت های آن توضیح خواهم داد

  • من نمایشی از تمام این مفاهیم را با استفاده از نمونه کد نشان خواهم داد.

  • محدودیت هایی که در دوره پوشش داده شده است، زمینه را برای ParallelStreams و CompletableFuture API فراهم می کند

شروع به کار با جریان های موازی

  • در این بخش، همه شما را با جریان های موازی آشنا می کنم و یک مثال ساده را با استفاده از جریان های موازی پیاده سازی می کنم

  • مقدمه ای بر Streams API و ParallelStreams

  • یک مثال ساده را با استفاده از ParallelStreams

    پیاده سازی کنید
  • نوشتن تست های واحد برای آزمایش ParallelStreams با استفاده از JUnit5

برنامه پرداخت خرده فروشی را با استفاده از جریان های موازی بسازید

  • در این بخش، یک برنامه ساده Backend Retail Checkout با استفاده از جریان های موازی می سازیم

جریانهای موازی - زیر سرپوش

  • در این بخش، قسمتهای داخلی جریانهای موازی را پوشش خواهم داد.

  • درباره نحوه عملکرد ParallelStreams در زیر کاپوت توضیح خواهم داد

  • مقایسه عملکرد مجموعه‌های مختلف هنگام استفاده از آن در مقابل ParallelStreams

  • استفاده از اپراتورهای پایانه جمع‌آوری در مقابل کاهش در Streams API و جریان‌های موازی

  • اپراتورهایی که هنگام استفاده در برابر ParallelStreams باعث عملکرد ضعیف می شوند

جریان های موازی - مدل رشته ای مشترک ForkJoin Pool

  • در این بخش، در مورد موتور اجرایی پشت جریان های موازی توضیح خواهم داد

  • مدل Threading را پوشش می دهد که در پشت صحنه توسط ParallelStreams استفاده شده است

  • پیکربندی ThreadPool برای عملکرد سریعتر

جریان های موازی - خلاصه

  • این بخش همه مواردی را که در بالا در رابطه با ParallelStreams توضیح داده شد خلاصه می کند

  • سناریوهای "زمان استفاده/زمانی استفاده نکردن" ParallelStreams را پوشش می‌دهد

CompletableFuture

  • در این بخش، من همه شما را با CompletableFuture API

    آشنا می کنم

کاوش توابع CompletableFuture

  • در این بخش، توابعی را که بخشی از CompletableFuture API هستند کدنویسی و بررسی خواهم کرد

  • برخی از عملکردهای کلیدی که بخشی از CompletableFuture API هستند را کاوش کنید

  • تست‌های واحد را برای آزمایش CompletableFuture با استفاده از JUnit5 بنویسید

با استفاده از CompletableFuture

یک برنامه ProductService بسازید
  • در این بخش، نمونه ProductService را با استفاده از CompletableFuture

    پیاده سازی می کنیم
  • این بخش به همه شما ایده ای درباره نحوه استفاده از CompletableFuture در یک سناریوی واقعی می دهد

ترکیب Streams و CompletableFuture

  • در این بخش، تکنیک‌های ترکیب Streams با CompletableFuture را به شما نشان خواهم داد.

  • من این را با افزودن یک پیشرفت به ProductService که InventoryService است بررسی خواهم کرد

  • گزینه‌های مختلف موجود برای ادغام Streams API با CompletableFuture را کاوش کنید

رسیدگی/بازیابی استثنا در CompletableFuture

  • در این بخش، شما را با تکنیک ها/گزینه هایی که برای رسیدگی/بازیابی استثناها با استفاده از CompletableFuture هستند آشنا می کنم

  • تکنیک های مختلف مدیریت استثنا و بازیابی را که در CompletableFuture در دسترس هستند، توضیح داده و پوشش خواهم داد.

    • handle()

    • به طور استثنایی()

    • whenComplete

  • من تفاوت رفتارهای بین آنها را مقایسه و توضیح خواهم داد و توصیه هایی در مورد استفاده از کنترل کننده های مختلف برای موارد استفاده مختلف ارائه خواهم کرد.

اجرای Exception Handling/Recovery در ProductService

  • در این سخنرانی، من تکنیک‌هایی را برای پیاده‌سازی تکنیک‌های رسیدگی به استثنا در ProductService به شما نشان می‌دهم

  • تکنیک رسیدگی و بازیابی استثناها را در ProductInfoService، ReviewService و InventoryService پیاده سازی کنید

CompletableFuture ThreadPool

  • در این بخش، ThreadPool و گزینه های مختلفی را که برای استفاده با CompletableFuture در دسترس هستند پوشش خواهم داد

  • من به طور پیش فرض CommonForkJoin ThreadPool را که برای اجرای CompletableFuture استفاده می شود پوشش خواهم داد

  • من تکنیک های استفاده از ThreadPool سفارشی که می تواند برای اجرای CompletableFuture استفاده شود را پوشش خواهم داد

رشته‌ها و روش‌های سربارگذاری شده غیرهمگام در CompletableFuture

  • من رشته هایی را که برای اجرای CompletableFuture استفاده می شوند پوشش خواهم داد

  • من تکنیک استفاده از متدهای Async() را نشان خواهم داد که بخشی از CompletableFuture API برای تغییر اجرای thread ها در CompletableFuture Pipeline است

با استفاده از Spring WebClient و CompletableFuture، RestFul API Client بسازید

  • در این بخش، با استفاده از Spring WebClient یک سرویس گیرنده api آرامش بخش خواهم ساخت و با CompletableFuture ادغام می شود تا عملکرد تماس های api را بهبود بخشد.

  • من کدنویسی می‌کنم و نحوه استفاده از Spring WebClient برای ساختن یک سرویس گیرنده استراحت را نشان می‌دهم

  • من برای بهبود عملکرد کلی کد، تکنیک ادغام تماس های RestAPI با CompletableFuture را کدنویسی و نشان خواهم داد.

مدیریت چندگانه CompletableFutures - anyOf()، allOf()

  • در این بخش، من کدنویسی می‌کنم و در مورد تکنیک‌های مدیریت چندین CompletableFuture توضیح می‌دهم.

  • من تابع allOf() را که بخشی از CompletableFuture API است کدنویسی و کاوش می کنم

  • من تابع anyOf() را که بخشی از CompletableFuture API است کدنویسی و کاوش می کنم

در پایان این دوره، درک کاملی از ParallelStreams و CompletableFuture و نحوه استفاده از آنها در پروژه های خود خواهید داشت.


سرفصل ها و درس ها

شروع با دوره Getting Started With the Course

  • مقدمه و اهداف دوره Course Introduction & Objectives

  • پیش نیازها Prerequisites

  • پیش نیازها Prerequisites

شروع با دوره Getting Started With the Course

  • مقدمه و اهداف دوره Course Introduction & Objectives

اسلایدهای دوره Course Slides

  • اسلایدهای دوره Course Slides

  • کد منبع Source Code

اسلایدهای دوره Course Slides

  • اسلایدهای دوره Course Slides

  • کد منبع Source Code

شروع برنامه نویسی موازی و ناهمزمان Getting Started with Parallel and Asynchronous programming

  • چرا برنامه نویسی موازی و برنامه نویسی ناهمزمان؟ Why Parallel Programming and Asynchronous Programming?

  • چرا برنامه نویسی موازی و برنامه نویسی ناهمزمان؟ Why Parallel Programming and Asynchronous Programming?

  • تکامل APIهای همزمانی/موازی در جاوا Evolution of Concurrency/Parallelism APIs in Java

  • همزمانی در مقابل موازی گرایی Concurrency vs Parallelism

شروع برنامه نویسی موازی و ناهمزمان Getting Started with Parallel and Asynchronous programming

  • تکامل APIهای همزمانی/موازی در جاوا Evolution of Concurrency/Parallelism APIs in Java

  • همزمانی در مقابل موازی گرایی Concurrency vs Parallelism

راه اندازی پروژه دوره Course Project SetUp

  • راه اندازی پروژه دوره Course Project SetUp

  • راه اندازی پروژه دوره Course Project SetUp

راه اندازی پروژه دوره Course Project SetUp

Threads، Future، ForkJoin و محدودیت های آن Threads, Future, ForkJoin and its Limitations

  • نمای کلی بخش Section Overview

  • نمای کلی بخش Section Overview

  • مروری بر راهنمای سرویس و کد Overview of the Service & Code Walkthrough

  • مروری بر راهنمای سرویس و کد Overview of the Service & Code Walkthrough

  • رشته ها و محدودیت های آن - Hands On Threads and its Limitations - Hands On

  • رشته ها و محدودیت های آن - Hands On Threads and its Limitations - Hands On

  • مقدمه ای بر ThreadPool/ExecutorService & Future Introduction to ThreadPool/ExecutorService & Future

  • ExecutorService/Future و محدودیت های آن - Hands On ExecutorService/Future and its limitations - Hands On

  • ExecutorService/Future و محدودیت های آن - Hands On ExecutorService/Future and its limitations - Hands On

  • Fork-Join Framework Fork-Join Framework

  • Fork Join Framework - Hands On Fork Join Framework - Hands On

Threads، Future، ForkJoin و محدودیت های آن Threads, Future, ForkJoin and its Limitations

  • مقدمه ای بر ThreadPool/ExecutorService & Future Introduction to ThreadPool/ExecutorService & Future

  • Fork-Join Framework Fork-Join Framework

  • Fork Join Framework - Hands On Fork Join Framework - Hands On

شروع کار با جریان های موازی Getting started with Parallel Streams

  • مقدمه ای بر Streams API و جریان های موازی Introduction to Streams API & Parallel Streams

  • مقدمه ای بر Streams API و جریان های موازی Introduction to Streams API & Parallel Streams

  • جریان های موازی - Hands On Parallel Streams - Hands On

  • جریان های موازی - Hands On Parallel Streams - Hands On

  • واحد تست جریان های موازی - JUnit5 Unit Testing Parallel Streams - JUnit5

  • واحد تست جریان های موازی - JUnit5 Unit Testing Parallel Streams - JUnit5

  • توابع Sequential() و Parallel() در Streams API Sequential() and Parallel() Functions in Streams API

  • جریان های موازی - با استفاده از جریان های موازی به حروف کوچک تبدیل شوند Parallel Streams - Transform to lowerCase using Parallel Streams

  • جریان های موازی - با استفاده از جریان های موازی به حروف کوچک تبدیل شوند Parallel Streams - Transform to lowerCase using Parallel Streams

شروع کار با جریان های موازی Getting started with Parallel Streams

  • توابع Sequential() و Parallel() در Streams API Sequential() and Parallel() Functions in Streams API

برنامه پرداخت خرده فروشی را با استفاده از جریان های موازی بسازید Build Retail Checkout Application using Parallel Streams

  • نمای کلی برنامه Overview of the Application

  • برنامه Checkout را با استفاده از جریان های موازی پیاده سازی کنید Implement the Checkout Application using parallel Streams

  • تست واحد برای برنامه پرداخت - JUnit5 Unit Test for the Checkout Application - JUnit5

  • تست واحد برای برنامه پرداخت - JUnit5 Unit Test for the Checkout Application - JUnit5

  • یک سبد خرید از 25 عنصر ایجاد کنید و پرداخت را انجام دهید Create a cart of 25 elements and Perform the checkout

  • یک سبد خرید از 25 عنصر ایجاد کنید و پرداخت را انجام دهید Create a cart of 25 elements and Perform the checkout

برنامه پرداخت خرده فروشی را با استفاده از جریان های موازی بسازید Build Retail Checkout Application using Parallel Streams

  • نمای کلی برنامه Overview of the Application

  • برنامه Checkout را با استفاده از جریان های موازی پیاده سازی کنید Implement the Checkout Application using parallel Streams

جریان های موازی - زیر کاپوت Parallel Streams - Under the hood

  • جریان های موازی - چگونه کار می کند؟ Parallel Streams - How it works ?

  • جریان های موازی - چگونه کار می کند؟ Parallel Streams - How it works ?

  • مقایسه عملکردهای Spliterator - ArrayList در مقابل LinkedList - قسمت 1 Comparing Spliterator Performances - ArrayList vs LinkedList - Part 1

  • مقایسه عملکردهای Spliterator - ArrayList در مقابل LinkedList - قسمت 2 Comparing Spliterator Performances - ArrayList vs LinkedList - Part 2

  • مقایسه عملکردهای Spliterator - ArrayList در مقابل LinkedList - قسمت 2 Comparing Spliterator Performances - ArrayList vs LinkedList - Part 2

  • جریان های موازی - ترتیب نتیجه محاسبات نهایی Parallel Streams - Final Computation Result Order

  • جریان های موازی - ترتیب نتیجه محاسبات نهایی Parallel Streams - Final Computation Result Order

  • جمع آوری و کاهش عملکرد ترمینال در جریان های موازی Collect & Reduce Terminal Operation in Parallel Streams

  • جمع آوری در مقابل کاهش - دست در Collect vs Reduce - Hands On

  • جمع آوری در مقابل کاهش - دست در Collect vs Reduce - Hands On

  • هویت در کاهش () اپراتور Identity in reduce() Operator

  • اپراتورهای API Streams - عملکرد ضعیف Streams API Operators - Poor Performance

  • اپراتورهای API Streams - عملکرد ضعیف Streams API Operators - Poor Performance

جریان های موازی - زیر کاپوت Parallel Streams - Under the hood

  • مقایسه عملکردهای Spliterator - ArrayList در مقابل LinkedList - قسمت 1 Comparing Spliterator Performances - ArrayList vs LinkedList - Part 1

  • جمع آوری و کاهش عملکرد ترمینال در جریان های موازی Collect & Reduce Terminal Operation in Parallel Streams

  • هویت در کاهش () اپراتور Identity in reduce() Operator

جریان های موازی - مدل رشته و استخر مشترک ForkJoin Parallel Streams - Threading Model & Common ForkJoin Pool

  • موارد داخلی Common ForkJoin Pool Internals of Common ForkJoin Pool

  • موازی سازی و موضوعات در ForkJoin Pool Parallelism & Threads in ForkJoin Pool

  • موازی سازی و موضوعات در ForkJoin Pool Parallelism & Threads in ForkJoin Pool

  • اصلاح موازی پیش فرض در جریان های موازی Modifying the Default parallelism in Parallel Streams

  • اصلاح موازی پیش فرض در جریان های موازی Modifying the Default parallelism in Parallel Streams

جریان های موازی - مدل رشته و استخر مشترک ForkJoin Parallel Streams - Threading Model & Common ForkJoin Pool

  • موارد داخلی Common ForkJoin Pool Internals of Common ForkJoin Pool

جریان های موازی - خلاصه Parallel Streams - Summary

  • جریان های موازی - خلاصه Parallel Streams - Summary

جریان های موازی - خلاصه Parallel Streams - Summary

  • جریان های موازی - خلاصه Parallel Streams - Summary

CompletableFuture CompletableFuture

  • مقدمه ای بر CompletableFuture Introduction to CompletableFuture

  • مقدمه ای بر CompletableFuture Introduction to CompletableFuture

CompletableFuture CompletableFuture

کاوش توابع CompletableFuture Exploring CompletableFuture Functions

  • بیایید اولین CompletableFuture خود را بنویسیم Lets write our first CompletableFuture

  • بیایید اولین CompletableFuture خود را بنویسیم Lets write our first CompletableFuture

  • تبدیل داده ها با استفاده از "thenApply()" Transform Data using "thenApply()"

  • تبدیل داده ها با استفاده از "thenApply()" Transform Data using "thenApply()"

  • تست واحد CompletableFuture با استفاده از JUnit5 Unit Testing CompletableFuture using JUnit5

  • تخصیص - طول رشته را به خروجی اضافه کنید Assignment - Add the length of the string to the output

  • ترکیب وظایف مستقل Async با استفاده از "thenCombine" Combing independent Async Tasks using "thenCombine"

  • ترکیب وظایف مستقل Async با استفاده از "thenCombine" Combing independent Async Tasks using "thenCombine"

  • ترکیب 3 کار مستقل Async با استفاده از "thenCombine" Combing 3 Independent Async Tasks using "thenCombine"

  • تکلیف - ترکیب 4 وظیفه Async مستقل Assignment - Combine 4 Independent Async Tasks

  • فراخوانی Async Tasks با استفاده از "thenCompose" Invoking Async Tasks using "thenCompose"

  • فراخوانی Async Tasks با استفاده از "thenCompose" Invoking Async Tasks using "thenCompose"

کاوش توابع CompletableFuture Exploring CompletableFuture Functions

  • تست واحد CompletableFuture با استفاده از JUnit5 Unit Testing CompletableFuture using JUnit5

  • تخصیص - طول رشته را به خروجی اضافه کنید Assignment - Add the length of the string to the output

  • ترکیب 3 کار مستقل Async با استفاده از "thenCombine" Combing 3 Independent Async Tasks using "thenCombine"

  • تکلیف - ترکیب 4 وظیفه Async مستقل Assignment - Combine 4 Independent Async Tasks

برنامه ProductService را با استفاده از CompletableFuture بسازید Build ProductService Application using CompletableFuture

  • ProductService را با استفاده از CompletableFuture - Approach 1 پیاده سازی کنید Implement ProductService using CompletableFuture - Approach 1

  • ProductService را با استفاده از CompletableFuture - Approach 1 پیاده سازی کنید Implement ProductService using CompletableFuture - Approach 1

  • ProductService را با استفاده از CompletableFuture - Approach 2 پیاده سازی کنید Implement ProductService using CompletableFuture - Approach 2

  • ProductService را با استفاده از CompletableFuture - Approach 2 پیاده سازی کنید Implement ProductService using CompletableFuture - Approach 2

  • مورد آزمایشی این تابع 'retrieveProductDetails_approach2' را بنویسید Write the test case for this 'retrieveProductDetails_approach2' function

  • مورد آزمایشی این تابع 'retrieveProductDetails_approach2' را بنویسید Write the test case for this 'retrieveProductDetails_approach2' function

برنامه ProductService را با استفاده از CompletableFuture بسازید Build ProductService Application using CompletableFuture

ترکیب Streams و CompletableFuture Combining Streams and CompletableFuture

  • افزودن جزئیات موجودی به یک محصول Adding Inventory Details to a Product

  • افزودن جزئیات موجودی به یک محصول Adding Inventory Details to a Product

  • ادغام InventoryService در ProductService - رویکرد 1 Integrate InventoryService in ProductService - Approach 1

  • InventoryService را در ProductService ادغام کنید - رویکرد 2 Integrate InventoryService in ProductService - Approach 2

ترکیب Streams و CompletableFuture Combining Streams and CompletableFuture

  • ادغام InventoryService در ProductService - رویکرد 1 Integrate InventoryService in ProductService - Approach 1

  • InventoryService را در ProductService ادغام کنید - رویکرد 2 Integrate InventoryService in ProductService - Approach 2

رسیدگی/بازیابی استثنا در CompletableFuture Exception Handling/Recovery in CompletableFuture

  • استراتژی ها/گزینه های مختلف برای رسیدگی به استثناها در CompletableFuture Different Strategies/Options to handle Exceptions in CompletableFuture

  • کنترل/بازیابی استثناها با استفاده از عملکرد "دسته". Handle/Recover Exceptions using "handle" function

  • کنترل/بازیابی استثناها با استفاده از عملکرد "دسته". Handle/Recover Exceptions using "handle" function

  • کنترل/بازیابی استثناها با استفاده از تابع "دسته" - قسمت 2 Handle/Recover Exceptions using "handle" function - Part2

  • کنترل/بازیابی استثناها با استفاده از تابع "دسته" - قسمت 2 Handle/Recover Exceptions using "handle" function - Part2

  • کنترل/بازیابی استثناها با استفاده از تابع "دسته" - قسمت 3 Handle/Recover Exceptions using "handle" function - Part3

  • کنترل/بازیابی استثناها با استفاده از عملکرد "به طور استثنایی". Handle/Recover Exceptions using "exceptionally" function

  • کنترل/بازیابی استثناها با استفاده از عملکرد "به طور استثنایی". Handle/Recover Exceptions using "exceptionally" function

  • مدیریت استثناها با استفاده از تابع "whenComplete". Handling Exceptions using "whenComplete" function

  • مدیریت استثناها با استفاده از تابع "whenComplete". Handling Exceptions using "whenComplete" function

رسیدگی/بازیابی استثنا در CompletableFuture Exception Handling/Recovery in CompletableFuture

  • استراتژی ها/گزینه های مختلف برای رسیدگی به استثناها در CompletableFuture Different Strategies/Options to handle Exceptions in CompletableFuture

  • کنترل/بازیابی استثناها با استفاده از تابع "دسته" - قسمت 3 Handle/Recover Exceptions using "handle" function - Part3

پیاده سازی Exception Handling/Recovery در ProductService Implement Exception Handling/Recovery in ProductService

  • کنترل/بازیابی استثناها در ReviewService Handle/Recover Exceptions in ReviewService

  • کنترل/بازیابی استثناها در ProductInfoService Handle/Recover Exceptions in ProductInfoService

  • تخصیص - رسیدگی/بازیابی استثناها در خدمات موجودی Assignment - Handle/Recover Exceptions in Inventory Service

  • تخصیص - رسیدگی/بازیابی استثناها در خدمات موجودی Assignment - Handle/Recover Exceptions in Inventory Service

پیاده سازی Exception Handling/Recovery در ProductService Implement Exception Handling/Recovery in ProductService

  • کنترل/بازیابی استثناها در ReviewService Handle/Recover Exceptions in ReviewService

  • کنترل/بازیابی استثناها در ProductInfoService Handle/Recover Exceptions in ProductInfoService

CompletableFuture & Threadpool CompletableFuture & Threadpool

  • CompletableFuture - ThreadPool پیش فرض CompletableFuture - Default ThreadPool

  • CompletableFuture - ThreadPool تعریف شده توسط کاربر با استفاده از ExecutorService CompletableFuture - User Defined ThreadPool using ExecutorService

CompletableFuture & Threadpool CompletableFuture & Threadpool

  • CompletableFuture - ThreadPool پیش فرض CompletableFuture - Default ThreadPool

  • CompletableFuture - ThreadPool تعریف شده توسط کاربر با استفاده از ExecutorService CompletableFuture - User Defined ThreadPool using ExecutorService

Threads و Async Overloaded Methods در CompletableFuture Threads and Async Overloaded Methods in CompletableFuture

  • موضوعات در CompletableFuture Threads in CompletableFuture

  • موضوعات در CompletableFuture Threads in CompletableFuture

  • توابع Async() بیش از حد در CompletableFuture Async() overloaded functions in CompletableFuture

  • توابع Async() بیش از حد در CompletableFuture Async() overloaded functions in CompletableFuture

Threads و Async Overloaded Methods در CompletableFuture Threads and Async Overloaded Methods in CompletableFuture

با استفاده از Spring WebClient و CompletableFuture، RestFul API Client بسازید Build RestFul API Client using Spring WebClient and CompletableFuture

  • معرفی Spring WebClient و بررسی اجمالی Movies RestFul API Introduction to Spring WebClient and Overview of the Movies RestFul API

  • معرفی Spring WebClient و بررسی اجمالی Movies RestFul API Introduction to Spring WebClient and Overview of the Movies RestFul API

  • RestClient را برای MoviesService بسازید Build the RestClient for MoviesService

  • JUnit را برای MoviesService Rest Client بنویسید Write JUnit for the MoviesService Rest Client

  • ترکیب CompletableFuture و RestClient Combining CompletableFuture and RestClient

  • بازیابی چندین فیلم با استفاده از Spring WebClient و CompletableFuture Retrieving Multiple Movies using Spring WebClient and CompletableFuture

  • بازیابی چندین فیلم با استفاده از Spring WebClient و CompletableFuture Retrieving Multiple Movies using Spring WebClient and CompletableFuture

با استفاده از Spring WebClient و CompletableFuture، RestFul API Client بسازید Build RestFul API Client using Spring WebClient and CompletableFuture

  • RestClient را برای MoviesService بسازید Build the RestClient for MoviesService

  • JUnit را برای MoviesService Rest Client بنویسید Write JUnit for the MoviesService Rest Client

  • ترکیب CompletableFuture و RestClient Combining CompletableFuture and RestClient

Handle Multiple CompletableFutures - anyOf()، allOf() Handle Multiple CompletableFutures - anyOf(), allOf()

  • برخورد با چندین CompletableFutures - allOf() Dealing with Multiple CompletableFutures - allOf()

  • برخورد با چندین CompletableFutures - allOf() Dealing with Multiple CompletableFutures - allOf()

  • برخورد با چندین CompletableFutures - anyOf() Dealing with Multiple CompletableFutures - anyOf()

Handle Multiple CompletableFutures - anyOf()، allOf() Handle Multiple CompletableFutures - anyOf(), allOf()

  • برخورد با چندین CompletableFutures - anyOf() Dealing with Multiple CompletableFutures - anyOf()

نمایش نظرات

نظری ارسال نشده است.

آموزش کدنویسی چند رشته ای، موازی و ناهمزمان در جاوا مدرن
خرید اشتراک و دانلود خرید تکی و دانلود | 160,000 تومان (5 روز مهلت دانلود) زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
7 hours
65
Udemy (یودمی) udemy-small
18 آبان 1401 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
8,855
4.5 از 5
دارد
دارد
دارد

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Pragmatic Code School Pragmatic Code School

علاقه مندان به فناوری، مدرس آنلاین

Pragmatic Code School Pragmatic Code School

علاقه مندان به فناوری، مدرس آنلاین

Udemy (یودمی)

یودمی یکی از بزرگ‌ترین پلتفرم‌های آموزشی آنلاین است که به میلیون‌ها کاربر در سراسر جهان امکان دسترسی به دوره‌های متنوع و کاربردی را فراهم می‌کند. این پلتفرم امکان آموزش در زمینه‌های مختلف از فناوری اطلاعات و برنامه‌نویسی گرفته تا زبان‌های خارجی، مدیریت، و هنر را به کاربران ارائه می‌دهد. با استفاده از یودمی، کاربران می‌توانند به صورت انعطاف‌پذیر و بهینه، مهارت‌های جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.

یکی از ویژگی‌های برجسته یودمی، کیفیت بالای دوره‌ها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد می‌دهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و می‌توانند به بهترین شکل ممکن از آموزش‌ها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرم‌های آموزشی آنلاین، به افراد امکان می‌دهد تا به راحتی و با کیفیت، مهارت‌های مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.