آموزش بررسی عمیق Java SE: برنامه‌نویسی Asynchronous - آخرین آپدیت

دانلود Java SE Deep Dive: Asynchronous Programming

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: مدل برنامه‌نویسی ناهمگام (Asynchronous) را بیاموزید و این پارادایم برنامه‌نویسی را در کاربردهای واقعی پیاده‌سازی کنید. در این دوره جامع Java SE، یاد می‌گیرید که چگونه یک سیستم ناهمگام برای پرس‌وجو از سرورهای آنلاین سازماندهی کنید. ابتدا بررسی خواهید کرد که چگونه با استفاده از رویکرد واکنش‌گرا (Reactive)، کوئری‌ها را به صورت موازی اجرا کنید. سپس، نحوه زنجیر کردن عملیات‌های مختلف و انتقال نتیجه یک کوئری به عنوان ورودی به کوئری بعدی را کشف خواهید کرد. در نهایت، مدیریت استثناها (Exceptions)، نحوه گزارش‌دهی و بازیابی سیستم از خطاها را خواهید آموخت. پس از اتمام این دوره، شما قادر خواهید بود سیستم‌های Reactive را بر پایه API CompletableFuture ایجاد و سازماندهی کنید و با درک عمیق از مکانیزم‌های داخلی، سیستم‌های واکنش‌گرای پیچیده را در هر فریمورکی پیاده‌سازی نمایید.

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

پرس‌وجوی ناهمگام داده‌های شبکه Querying network data asynchronously

  • معرفی دوره: دستیابی به بیشترین نرخ بازدهی ممکن Introducing the course: Getting the best throughput possible

  • تعریف نرخ بازدهی (Throughput) و تأخیر (Latency) در یک اپلیکیشن Defining the throughput and the latency of an application

  • تعریف کد همگام (Synchronous) و نحوه ایجاد انسداد (Blocking) در کد Defining synchronous code and how it can lead to blocking code

  • استفاده از کد ناهمگام برای اجرای عملیات در آینده Using asynchronous code to execute something in the future

  • اجرای همزمان کد در یک Thread دیگر Executing your code concurrently in another thread

  • دمو: چاپ ناهمگام یک لیست Demo: Printing a list asynchronously

  • دمو: مرتب‌سازی لیست با یک Comparator ناهمگام Demo: Sorting a list with an asynchronous comparator

  • دمو: پرس‌وجو از سرورها به صورت تک‌به‌تک Demo: Querying servers one at a time

  • دمو: پرس‌وجوی همزمان از سرورها Demo: Querying servers concurrently

  • دمو: انتخاب تعداد Threadها Demo: Choosing the number of threads

  • دمو: پرس‌وجوی واکنش‌گرا از سرورها با CompletableFuture Demo: Querying servers reactively with a CompletableFuture

  • جمع‌بندی مفاهیم: Asynchronous، Blocking و Concurrent Wrapping up the vocabulary: Asynchronous, blocking, concurrent

ارسال نتیجه یک تسک به عنوان ورودی تسک دیگر Sending the result of a task as an input for another task

  • معرفی ماژول: چرا باید از Blocking اجتناب کنیم؟ Introducing the module: Why should you avoid blocking?

  • ایجاد مثال آژانس مسافرتی Creating the travel agency example

  • دمو: پرس‌وجو و سپس چاپ به صورت واکنش‌گرا Demo: Querying then printing reactively

  • دمو: استفاده محتاطانه از Stream API Demo: Using the Stream API with caution

  • دمو: اصلاح الگوی Stream API Demo: Fixing the Stream API pattern

  • دمو: ایجاد یک خط لوله (Pipeline) کامل واکنش‌گرا Demo: Creating a complete reactive pipeline

  • زنجیر کردن تسک‌ها به روش Non-blocking Chaining tasks in a non-blocking way

  • طراحی خط لوله‌های پردازش ناهمگام Designing asynchronous processing pipelines

  • اولین الگوهای CompletionStage First CompletionStage patterns

تقسیم یک فرآیند تجاری به چندین تسک ناهمگام Splitting a business process into several asynchronous tasks

  • معرفی ماژول: تقسیم یک فرآیند تجاری Introducing the module: Splitting a business process

  • دمو: دریافت اولین وضعیت آب‌وهوا با anyOf() Demo: Getting the first weather with anyOf()

  • دمو: ترکیب یک استعلام قیمت و وضعیت آب‌وهوا Demo: Combining a quotation and a weather

  • دمو: ترکیب ساختاری استعلام قیمت و وضعیت آب‌وهوا Demo: Composing a quotation and a weather

  • دمو: مقایسه Combination و Composition Demo: Comparing combination and composition

  • دمو: انتخاب بین حلقه (Looping) و ترکیب (Combining) Demo: Choosing between looping and combining

  • بررسی بیشتر الگوهای CompletionStage Examining more CompletionStage patterns

کنترل Executor برای اجرای تسک‌ها Controlling what executor can run a task

  • معرفی ماژول: کنترل Threading Introducing the module: Controlling threading

  • دمو: کدام Threadها تسک‌های شما را اجرا می‌کنند؟ Demo: What threads do execute your tasks?

  • دمو: انتخاب Thread Poolها Demo: Choosing thread pools

  • دمو: انتخاب Thread Poolها با استفاده از Composition Demo: Choosing thread pools with composition

  • دمو: محدود کردن همزمانی با Semaphore Demo: Limiting concurrency with a semaphore

  • دمو: محدود کردن همزمانی با gatherer mapConcurrent() Demo: Limiting concurrency with a mapConcurrent() gatherer

  • انتخاب هوشمندانه استراتژی اجرا Choosing your strategy wisely

مدیریت استثناها در سیستم‌های واکنش‌گرا Dealing with exceptions in reactive systems

  • معرفی ماژول: مدیریت استثناها در سیستم‌های واکنش‌گرا Introducing the module: Managing exceptions in reactive systems

  • برخورد با استثناها Dealing with exceptions

  • دمو: استفاده از exceptionally() برای بازیابی از خطا Demo: Using exceptionally() to recover from an exception

  • دمو: استفاده از handle() برای مدیریت استثناها Demo: Using handle() to deal with exceptions

  • دمو: استفاده از whenComplete() برای مدیریت استثناها Demo: Using whenComplete() to deal with exceptions

  • دمو: افزودن Timeout به پرس‌وجوی پیش‌بینی آب‌وهوا Demo: Adding a timeout on the querying of the weather forecast

  • دمو: بازگرداندن WeatherResponse Demo: Returnnig a WeatherResponse

  • دمو: ایجاد سفر بدون پیش‌بینی آب‌وهوا Demo: Creating a travel witout the weather forecast

  • دمو: دریافت بهترین قیمت در صورت نبود برخی پاسخ‌ها Demo: Getting the best quotation when some of them are missing

  • دمو: جمع‌بندی نهایی و ساخت TravelResponse Demo: Putting it all together- building the final TravelResponse

  • متدهای مدیریت خطا Methods to manage errors

  • خلاصه دوره Course summary

نمایش نظرات

آموزش بررسی عمیق Java SE: برنامه‌نویسی Asynchronous
جزییات دوره
1h 48m
47
Pluralsight (پلورال سایت) Pluralsight (پلورال سایت)
(آخرین آپدیت)
1
از 5
دارد
دارد
دارد
Jose Paumard
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Jose Paumard Jose Paumard

خوزه با علاقه بیش از 20 سال در مورد برنامه نویسی رایانه ها ، اولین بار در مونتاژ و C ، C برای ماشین های موازی SIMD قبل از استفاده از جاوا به عنوان یک زبان شی گرا ، برای بسیاری از عمده ترین برنامه های مدرن ضروری بود. او تخصص و ظرفیت خود را برای تجزیه و تحلیل و ترکیب در بسیاری از پروژه ها ، عمدتا در لایه های پایین تر ، نزدیک به داده ها ، بلکه همچنین در مورد طراحی پیچیده رابط کاربر یا مرورگر ، به ارمغان می آورد. دکترای ریاضیات کاربردی و علوم کامپیوتر ، استادیار دانشگاه پاریس نور به مدت 15 سال ، خوزه همچنین اشتیاق زیادی به آموزش و انتقال دانش دارد. او برای هزاران نفر از توسعه دهندگان فرانسوی زبان در سراسر جهان ، وبلاگ ، جاوا le soir ، منبع مستند فرانسه در مورد فن آوری های جاوا می نویسد. وی عضوی از گروه کاربران فرانسوی جاوا در پاریس و از سازمان دهندگان کنفرانس Devoxx France است.