آموزش برنامه نویسی واکنشی جاوا [از ابتدا]

Java Reactive Programming [ From Scratch ]

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: برنامه‌نویسی ناهمزمان و غیر مسدود جاوا با برنامه‌نویسی واکنش‌گرای کامل Reactor پیش‌نیاز برای Spring WebFlux Mono/Flux Reactive Streams برنامه‌نویسی ناهمزمان و غیر مسدود ناشران گرم و سرد استراتژی پس‌فشار و سرریز ناشران ترکیبی از Publishers Sinks, unicast, Unicast Publishers/الگوی مشترک/ارتباط پیش نیازها: دانش جاوا 8 یا بالاتر راحت با لهجه هندی

برنامه نویسی واکنشی را از ابتدا یاد بگیرید! با آزمون های تکالیف!

برنامه نویسی واکنشی یک سبک برنامه نویسی است که با جریان های داده ناهمزمان سروکار دارد! یک مدل توسعه که بر مشاهده جریان های داده و واکنش به تغییرات و انتشار آنها تمرکز دارد.

برنامه‌نویسی واکنش‌گرا را برای ساختن سیستم‌های واکنش‌گرا یاد می‌گیرید - سیستم‌های توزیع‌شده یا میکروسرویس‌های بسیار انعطاف‌پذیر! برنامه های مدرن از تعداد زیادی از کاربران همزمان پشتیبانی می کنند. اکثر برنامه ها ماهیت CRUD دارند و زمان زیادی را می گیرند/عملیات IO را مسدود می کنند که باعث هدر رفتن منابع سیستم می شود. برنامه نویسی واکنشی به ما کمک می کند تا کدهای بسیار انعطاف پذیر و قابل استفاده مجدد را به سبکی غیرهمزمان و غیر مسدود کننده بنویسیم. با منابع سیستم کمتر، کار بسیار بیشتری انجام می شود.

اگر می خواهید روی هر یک از این موارد کار کنید، این دوره پیش نیاز است!!

  • Spring WebFlux

  • RScoket

  • پردازش جریان کافکا یا ردیس

در پایان این دوره، با

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

  • عملیات غیرانسداد ناهمزمان

  • Mono/Flux Publishers

  • کنترل فشار برگشتی با استراتژی‌های مختلف

  • عملگرهای مختلف Flux

  • Threading Schedulers

  • Sinks - Unicast، Multicast، Replay

  • ناشران داغ سرد

  • ترکیب چند ناشر با concat، merge، zip، combinationLatest و غیره

  • دسته‌بندی با بافر، پنجره، GroupBy

  • تکرار تلاش مجدد

  • آزمایش واحد با تأییدکننده مرحله

  • متن ها

  • اجرای منطق کسب و کار به سبک اعلانی

  • نوشتن کد بسیار انعطاف پذیر

  • برای Spring WebFlux باید انجام شود.

  • اجرای منطق کسب و کار به سبک اعلانی

  • نوشتن کد بسیار انعطاف پذیر

  • بررسی بهتر خطا

  • قلاب‌های راکتور/پاسخ به تماس

  • پردازش جریان موازی


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

معرفی Introduction

  • مشکل با موضوع/درخواست Problem With Thread / Request

  • مدل های IO IO Models

  • درخواست! Request!

  • معرفی جریان های واکنشی Reactive Streams Introduction

  • مقدمه برنامه نویسی واکنشی Reactive Programming Introduction

  • مفروضات و پیش نیازها Assumptions & Prerequisites

  • ارتباط ناشر و مشترک - گام به گام - باید تماشا کنید Publisher & Subscriber Communication - Step By Step - MUST WATCH

  • امتحان Quiz

منابع Resources

  • کد منبع Source Code

مونونوکلئوز Mono

  • مونو - مقدمه Mono - Introduction

  • چرا ما به مونو نیاز داریم؟ Why we need Mono?

  • وابستگی های Maven Maven Dependencies

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

  • جریان رفتار تنبل Stream Lazy Behavior

  • [مونو] - فقط [Mono] - Just

  • [مونو] - اشتراک - قسمت 1 [Mono] - Subscribe - Part 1

  • [Mono] - اشتراک - onError [Mono] - Subscribe - onError

  • Refactor ساده Simple Refactor

  • استفاده از Faker Use Of Faker

  • [مونو] - انتشار خالی/خطا [Mono] - Emitting Empty / Error

  • [مونو] - از تامین کننده [Mono] - From Supplier

  • [مونو] - از قابل تماس [Mono] - From Callable

  • [مونو] - ساخت خط لوله در مقابل اجرا [Mono] - Pipeline Build vs Execution

  • [Mono] - Async کجاست؟ [Mono] - Where is Async?

  • [مونو] - بلوک [Mono] - Block

  • [مونو] - از آینده [Mono] - From Future

  • [مونو] - از Runnable [Mono] - From Runnable

  • [مونو] - خلاصه [Mono] - Summary

  • [تخصیص] - سرویس فایل [ASSIGNMENT] - File Service

  • [تکلیف-راه حل] - اجرای سرویس فایل - قسمت 1 [ASSIGNMENT-SOLUTION] - File Service Implementation - Part 1

  • [تکلیف-راه حل] - اجرای سرویس فایل - قسمت 2 [ASSIGNMENT-SOLUTION] - File Service Implementation - Part 2

  • امتحان Quiz

شار Flux

  • [اختیاری] - سری واکنشی [Optional] - Reactive Series

  • [شار] - مقدمه [Flux] - Introduction

  • [شار] - فقط [Flux] - Just

  • [Flux] - مشترکین متعدد [Flux] - Multiple Subscribers

  • [Flux] - از Array/List [Flux] - From Array / List

  • [شار] - از جریان [Flux] - From Stream

  • [شار] - برد [Flux] - Range

  • [شار] - ورود [Flux] - Log

  • [Flux] - پیاده سازی مشترک سفارشی [Flux] - Custom Subscriber Implementation

  • شار در مقابل لیست Flux vs List

  • [شار] - فاصله [Flux] - Interval

  • [Flux] - از مونو/ناشر [Flux] - From Mono / Publisher

  • [شار] - به مونو [Flux] - To Mono

  • [شار] - خلاصه [Flux] - Summary

  • [تخصیص] - ناظر قیمت سهام [ASSIGNMENT] - Stock Price Observer

  • [تکالیف-راه حل] - اجرای ناظر قیمت سهام [ASSIGNMENT-SOLUTION] - Stock Price Observer Implementation

  • امتحان Quiz

  • [اختیاری] - سری واکنشی [Optional] - Reactive Series

  • [اختیاری] - سری واکنشی [Optional] - Reactive Series

شار - انتشار آیتم ها به صورت برنامه ریزی شده Flux - Emitting Items Programmatically

  • معرفی Introduction

  • پیاده سازی مشترک پیش فرض Default Subscriber Implementation

  • شار ایجاد - نسخه ی نمایشی Flux Create - Demo

  • Flux Create - Refactor Flux Create - Refactor

  • FluxSink - اشتراک گذاری با موضوعات متعدد FluxSink - Sharing With Multiple Threads

  • FluxSink در مقابل سینک FluxSink vs Sinks

  • اپراتور را بگیرید Take Operator

  • Flux Create - بررسی کنید که آیا جریان پایین لغو شده است Flux Create - Check If Down Stream Is Cancelled

  • تولید شار Flux Generate

  • Flux Generate - Emit Until Flux Generate - Emit Until

  • Flux Generate - چگونه شمارنده داشته باشیم Flux Generate - How To Have Counter

  • Flux Generate - With State Flux Generate - With State

  • فلاکس فشار Flux Push

  • خلاصه Summary

  • [تخصیص] - سرویس فایل خوان [ASSIGNMENT] - File Reader Service

  • [تکلیف-راه حل] - اجرای سرویس فایل خوان [ASSIGNMENT-SOLUTION] - File Reader Service Implementation

  • امتحان Quiz

اپراتورها Operators

  • معرفی Introduction

  • اپراتور - دسته Operator - Handle

  • اپراتور - دستگیره - تا وضعیت Operator - Handle - Until Condition

  • اپراتور - Do Hooks/Callbacks - Part 1 Operator - Do Hooks / Callbacks - Part 1

  • اپراتور - Do Hooks/Callbacks - Part 2 Operator - Do Hooks / Callbacks - Part 2

  • اپراتور - Do Hooks/Callbacks - قسمت 3 Operator - Do Hooks / Callbacks - Part 3

  • اپراتور - نرخ حد Operator - Limit Rate

  • اپراتور - تاخیر Operator - Delay

  • اپراتور - oneError Operator - onError

  • اپراتور - مهلت زمانی Operator - Timeout

  • اپراتور - پیش فرض اگر خالی باشد Operator - Default If Empty

  • اپراتور - سوئیچ اگر خالی باشد Operator - Switch If Empty

  • اپراتور - تبدیل Operator - Transform

  • اپراتور - ابتدا روشن کنید Operator - Switch On First

  • اپراتور - نقشه مسطح Operator - Flat Map

  • اپراتور - نقشه Concat Operator - Concat Map

  • خلاصه Summary

  • امتحان Quiz

ناشران گرم و سرد Hot & Cold Publishers

  • معرفی Introduction

  • ناشر سرد Cold Publisher

  • ناشر داغ - به اشتراک بگذارید Hot Publisher - Share

  • Hot Publisher - Ref Count Hot Publisher - Ref Count

  • Hot Publisher - Ref Count - Resubscribe Hot Publisher - Ref Count - Resubscribe

  • Hot Publisher - Auto Connect Hot Publisher - Auto Connect

  • Hot Publisher - Cache Hot Publisher - Cache

  • خلاصه Summary

  • [تخصیص] - موجودی/جریان درآمد [ASSIGNMENT] - Inventory/Revenue Stream

  • [تکلیف-راه حل] - موجودی/اجرای جریان درآمد [ASSIGNMENT-SOLUTION] - Inventory/Revenue Stream Implementation

  • امتحان Quiz

Threading & Schedulers Threading & Schedulers

  • معرفی Introduction

  • ناشر/مشترک - موضوع پیش فرض - نسخه نمایشی Publisher/Subscriber - Default Thread - Demo

  • اشتراک در Subscribe On

  • اشتراک در - نسخه ی نمایشی Subscribe On - Demo

  • اشتراک چندگانه روشن است Multiple Subscribe On

  • بیشتر در مورد زمانبندی ها More On Schedulers

  • انتشار در Publish On

  • انتشار در - نسخه ی نمایشی Publish On - Demo

  • انتشار در و اشتراک در Publish On & Subscribe On

  • اجرای موازی Parallel Execution

  • توجه داشته باشید در مورد فاصله شار Note On Flux Interval

  • خلاصه Summary

  • امتحان Quiz

استراتژی فشار برگشتی/سرریز Backpressure / Overflow Strategy

  • معرفی Introduction

  • استراتژی سرریز - بافر Overflow Strategy - Buffer

  • استراتژی های مختلف سرریز Various Overflow Strategies

  • استراتژی سرریز - رها کردن - قسمت 1 Overflow Strategy - Drop - Part 1

  • استراتژی سرریز - رها کردن - قسمت 2 Overflow Strategy - Drop - Part 2

  • استراتژی سرریز - رها کردن - گرفتن ارزش های کاهش یافته Overflow Strategy - Drop - Capturing Dropped Values

  • استراتژی سرریز - جدیدترین Overflow Strategy - Latest

  • استراتژی سرریز - Drop vs Latest Overflow Strategy - Drop Vs Latest

  • استراتژی سرریز - خطا Overflow Strategy - Error

  • استراتژی سرریز - بافر با اندازه Overflow Strategy - Buffer With Size

  • استراتژی سرریز - Flux Create Overflow Strategy - Flux Create

  • خلاصه Summary

ترکیب ناشران Combining Publishers

  • معرفی Introduction

  • شروع کن با Start With

  • Concat Concat

  • ادغام Merge

  • زیپ Zip

  • ترکیب آخرین Combine Latest

  • خلاصه Summary

  • [تکالیف] - قیمت خودرو در طول زمان [ASSIGNMENT] - Car Price Over Time Stream

  • [تکلیف-راه حل] - قیمت خودرو در طول زمان - اجرا [ASSIGNMENT-SOLUTION] - Car Price Over Time Stream - Implementation

  • امتحان Quiz

دسته بندی Batching

  • معرفی Introduction

  • دسته بندی با بافر Batching With Buffer

  • دسته بندی با بافر - هنگامی که سیگنال کامل منتشر می شود Batching With Buffer - When Complete Signal Is Emitted

  • دسته بندی با بافر - مهلت زمانی Batching With Buffer - Timeout

  • دسته بندی با بافر - همپوشانی و رها کردن Batching With Buffer - Overlapping & Dropping

  • [تکالیف] - درآمد کتاب بر اساس جریان دسته بندی [ASSIGNMENT] - Book Revenue By Category Stream

  • [تکلیف-راه حل] - درآمد کتاب بر اساس دسته جریان - اجرا [ASSIGNMENT-SOLUTION] - Book Revenue By Category Stream - Implementation

  • دسته بندی با پنجره Batching With Window

  • دسته بندی با پنجره - نسخه ی نمایشی Batching With Window - Demo

  • دسته بندی با پنجره - مدت زمان Batching With Window - Duration

  • دسته بندی با گروه توسط Batching With Group By

  • دسته بندی با گروه توسط - نسخه ی نمایشی Batching With Group By - Demo

  • [تکلیف] - پردازش سفارش کودکان و خودرو [ASSIGNMENT] - Kids & Automotive Order Processing

  • [تکلیف-راه حل] - پردازش سفارش کودکان و خودرو - اجرا [ASSIGNMENT-SOLUTION] - Kids & Automotive Order Processing - Implementation

  • یادداشت اضافی در مورد تکلیف Additional Note On Assignment

  • خلاصه Summary

تکرار و تلاش مجدد Repeat & Retry

  • معرفی Introduction

  • تکرار - نسخه ی نمایشی Repeat - Demo

  • تکرار با شرط Repeat With Condition

  • دوباره امتحان کنید Retry

  • با تاخیر ثابت دوباره تلاش کنید Retry With Fixed Delay

  • دوباره امتحان کنید Spec Retry Spec

سینک Sinks

  • معرفی Introduction

  • Sink One - Emit Value را امتحان کنید Sink One - Try Emit Value

  • Sink One - Emit Failure Handler Sink One - Emit Failure Handler

  • سینک یک - مشترکین متعدد Sink One - Multiple Subscribers

  • انواع سینک Sinks Types

  • سینک بسیاری - Unicast Sink Many - Unicast

  • Sink Many - Unicast - چندین مشترک Sink Many - Unicast - Multiple Subscribers

  • آیا نخ سینک ها ایمن هستند؟ Are Sinks Thread Safe?

  • سینک بسیاری - چندپخشی Sink Many - Multicast

  • Sink Many - Multicast - Buffer Sink Many - Multicast - Buffer

  • Sink Many - Multicast - غیر فعال کردن تاریخچه Sink Many - Multicast - Disable History

  • Sink Many - Multicast - Direct Best Effort Sink Many - Multicast - Direct Best Effort

  • Sink Many - Replay Sink Many - Replay

  • خلاصه Summary

  • [تکلیف] - ارتباط اتاق شل [ASSIGNMENT] - Slack Room Communication

  • [تکلیف-راه حل] - پیام شل - پیاده سازی [ASSIGNMENT-SOLUTION] - Slack Message - Implementation

  • [تکلیف-راه حل] - Slack Member - پیاده سازی [ASSIGNMENT-SOLUTION] - Slack Member - Implementation

  • [تکلیف-راه حل] - اتاق شل - اجرا [ASSIGNMENT-SOLUTION] - Slack Room - Implementation

  • [تکلیف-راه حل] - اتاق شل - نسخه نمایشی نهایی [ASSIGNMENT-SOLUTION] - Slack Room - Final Demo

متن نوشته Context

  • معرفی Introduction

  • زمینه - نسخه ی نمایشی - قسمت 1 Context - Demo - Part 1

  • زمینه - نسخه ی نمایشی - قسمت 2 Context - Demo - Part 2

  • زمینه - به روز رسانی Context - Update

  • زمینه - پیاده سازی محدود کننده نرخ Context - Rate Limiter Implementation

تست واحد با تأیید کننده مرحله Unit Testing With Step Verifier

  • معرفی Introduction

  • مرحله تأیید کننده - انتظار بعدی Step Verifier - Expect Next

  • مرحله تأیید کننده - خطا Step Verifier - Error

  • مرحله تأیید کننده - انتظار تعداد بعدی و مصرف در حالی را داشته باشید Step Verifier - Expect Next Count & Consume While

  • مرحله تأیید کننده - آزمایش تاخیر Step Verifier - Delay Test

  • Step Verifier - تست زمان مجازی - قسمت 1 Step Verifier - Virtual Time Test - Part 1

  • Step Verifier - تست زمان مجازی - قسمت 2 Step Verifier - Virtual Time Test - Part 2

  • مرحله تأیید کننده - نام سناریو Step Verifier - Scenario Name

  • مرحله تأیید کننده - زمینه Step Verifier - Context

  • خلاصه Summary

  • خلاصه Summary

متشکرم Thank You

  • بعدش چی؟ What next?

نمایش نظرات

آموزش برنامه نویسی واکنشی جاوا [از ابتدا]
جزییات دوره
12 hours
180
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
9,743
4.7 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Vinoth Selvaraj Vinoth Selvaraj

مهندس اصلی