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

Modern Asynchronous JavaScript

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیویی برای نمایش وجود ندارد.
توضیحات دوره: وقتی نوبت به نوشتن کد ناهمگام در جاوا اسکریپت می رسد ، برگشت تماس ها می تواند یک دردسر باشد. در این دوره ، گزینه هایی برای پاسخ به تماس ، از جمله وعده های ES6 ، و چگونگی ترکیب ژنراتورها با وعده های نوشتن کد async به سبک همزمان را مشاهده خواهید کرد. در این دوره ، JavaScript مدرن ناهمزمان ، شما یاد خواهید گرفت که چگونه کد ناهمزمان بنویسید که یک شادی برای حفظ ، نه یک بار. شما یاد خواهید گرفت که چگونه با ایجاد یک چارچوب وعده در مورد وعده ها ، گزینه ای برای بازگشت ، استدلال کنید. دیدن وعده ها از دید یک تولید کننده به دلیل بهتر بودن مصرف کننده API های مبتنی بر وعده کمک می کند. سپس ، در مورد ژنراتورهای ES6 و نحوه ترکیب آنها با وعده های نوشتن کدی که همزمان به نظر می رسد اما در واقع ناهمزمان است ، یاد خواهید گرفت. این سبک بی زبانی ذاتی پاسخ ها را قطع می کند و حتی به تنهایی قول می دهد. بعد از اتمام این دوره ، می دانید که چگونه کد ناهمگام را به روشی بنویسید که بدون دردسر برای حفظ آن باشد.

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

پاسخگویی Callbacks

  • Callback Nesting Nightmare Callback Nesting Nightmare

  • چه چیزی از این دوره دریافت خواهید کرد What You Will Get out of This Course

  • چه چیزی میخواهید بدانید What You Need to Know

  • نحوه استفاده از این دوره How to Use This Course

  • پاسخگویی Callbacks

  • شمشیر دو لبه: درزهای آشکار Async Double-edged Sword: Explicit Async Seams

  • Con: برنامه Seams Rip Across Con: Seams Rip Across Program

  • Con: مکانیسم خطای دیگری Con: Another Error Mechanism

  • Con: استفاده مجدد از منطق مدیریت خطا سخت است Con: Hard to Reuse Error-handling Logic

  • Con: درک آن دشوار است Con: Difficult to Understand

  • چالش: چندین تماس تلفنی را همگام سازی کنید Challenge: Synchronize Multiple Callbacks

  • راه حل Solution

  • موازی کاری: آیا این خوب نخواهد بود؟ Parallelism: Wouldn't This Be Nice?

  • رویدادهای یک شات One-shot Events

  • غذاهای آماده Takeaways

راه اندازی آزمایشگاه Lab Setup

  • شبیه سازی نقطه شروع از GitHub Cloning the Starting Point from GitHub

  • مثالهای عملیاتی Operation Examples

  • اجرای تست ها Running the Tests

  • تنظیمات WebStorm WebStorm Settings

  • تست های در حال اجرا خودکار Auto Running Tests

  • چند اشاره در مورد استفاده از موکا A Few Pointers About Using Mocha

  • مثالهای پاسخ به تماس Callback Examples

  • اشکال زدایی Debugging

ساخت یک چارچوب وعده Building a Promise Framework

  • چرا یک چارچوب وعده درست کنیم؟ Why Build a Promise Framework?

  • چالش - تقسیم موفقیت و خطای پاسخ Challenge - Split Success and Error Callbacks

  • راه حل - تقسیم موفقیت و خطای پاسخ Solution - Split Success and Error Callbacks

  • یک مجموعه عملیاتی اضافه کنید Add an Operations Suite

  • با استفاده از انجام شده برای ادعا Using Done to Assert

  • چالش - بعداً پاسخ تماس را تصویب کنید Challenge - Pass the Callback Later

  • راه حل - بعداً پاسخ تماس را تصویب کنید Solution - Pass the Callback Later

  • سوال - چرا ممکن است این جدایی مفید باشد؟ Question - Why Might This Separation Be Helpful?

  • ایمنی زمان بندی بدون اتصال و لانه سازی Timing Safety without Coupling and Nesting

  • چالش - ثبت چندین تماس تلفنی Challenge - Register Multiple Callbacks

  • راه حل Solution

  • تقسیم ثبت نام موفقیت و خطا Splitting Registration of Success and Error Callbacks

  • getWeather را به fetchWeather تبدیل کنید Convert getWeather to fetchWeather

  • استخراج نوع عملیات Extracting the Operation Type

  • مزایای نوع عملیات Operation Type Benefits

عملیات زنجیره ای (وعده ها) Chaining Operations (Promises)

  • یک فنجان قهوه برای من تهیه کنید Get Me a Cup of Coffee

  • چالش - ثبت نام پاسخ به طور همزمان Challenge - Register a Callback Asynchronously

  • راه حل - ثبت نام پاسخ به طور همزمان Solution - Register a Callback Asynchronously

  • چالش - موازی سازی Challenge - Parallelism

  • راه حل - موازی سازی Solution - Parallelism

  • چالش - لغو نمی شود Challenge - Unnesting

  • راه حل - لغو نمی شود Solution - Unnesting

  • حمل و نقل تکمیل Forwarding Completion

  • منتظر اتمام تکمیل Waiting for the Completion of the Completion

  • عملیات آیا حمل و نقل است Operation Does the Forwarding

  • لانه سازی کجا رفت؟ Where Did the Nesting Go?

  • و سپس And Then

  • خلاصه کردن زنجیره ای Chaining Recap

بالشتک زدن تماس ها Cushioning Callbacks

  • تغییر دیدگاه Shifting Perspective

  • چالش - بازیابی خطا Challenge - Error Recovery

  • راه حل - بازیابی خطا Solution - Error Recovery

  • Async Error Recovery and Challenge - موفقیت در حمل و نقل Async Error Recovery and Challenge - Forwarding Success

  • ارسال موفقیت و چالش Forwarding Success and Challenge

  • راه حل - انتقال خطاها Solution - Forwarding Errors

  • استفاده مجدد از خطاهای کنترل کننده Reusing Error Handlers

  • تحول نتیجه همزمان Synchronous Result Transformation

  • بازیابی از Thrown Errors Too Recover from Thrown Errors Too

  • بازیابی از خطاهای خطا Recover from Error Errors

  • عملیات باید فقط یکبار انجام شود Operations Should Only Complete One Time

  • چندین شکست را مسدود کنید Block Multiple Failures

  • همزمانی پنهانی Surrepticious Synchronicity

  • اطمینان از عدم همزمان بودن Ensuring Asynchronicity

  • خلاصه ای از حمایت ها Summary of Protections

وعده های ES6 و فراتر از آن ES6 Promises and Beyond

  • وعده ها چیز جدیدی نیست Promises are Not New

  • واژه شناسی Terminology

  • چرا به آن Resolve گفته می شود؟ Why Is it Called Resolve?

  • دوباره کاری کردن حل کنید Reworking Resolve

  • چالش - رفع مشکل Challenge - Fixing Resolve

  • تعریف حل شده Defining Resolved

  • مجری - الگوی ماژول آشکار کننده Executor - the Revealing Module Pattern

  • به تعویق افتاد در مقابل آنتابل Deferred Versus Thenable

  • مجری با تماس Executor with Callbacks

  • توابع را حل کنید و رد کنید Static Resolve and Reject Functions

  • آزمایش با Promises و ES6 Promise Backward سازگاری Testing with Promises and ES6 Promise Backward Compatibility

  • چرا کتابخانه های وعده های شخص ثالث هنوز مفید هستند Why Third Party Promise Libraries Are Still Useful

  • سرانجام Finally

  • نوید کتابداران موجود را که دوست دارید Promisifying Existing Librarires You Love

  • مجموعه وعده های عملیاتی Promise Collection Ops

  • رد بدون کنترل Unhandled Rejection

  • امتحان Quizzary

ایجاد یک عملکرد جریان کنترل مبتنی بر ژنراتور Building a Generator-based Control Flow Function

  • وعده ها کامل نیستند Promises Aren't Perfect

  • تکرار کنندگان Iterators

  • ژنراتورها Generators

  • ژنراتورها عملکردهای معلق و قابل تعویض هستند Generators Are Suspendable and Resumable Functions

  • هنگام از سرگیری ژنراتور ، می توان خطاها را رد کرد When Resuming a Generator We Can Pass Errors

  • تقویم ها Calendars

  • اشکال زدایی ژنراتورها Debugging Generators

  • من می خواهم قول بدهم I Would Like to Yield Promises

  • دادن قول به دستیار من Yielding a Promise to My Assistant

  • کمک به وعده های بی نهایت Assisting with Infinite Promises

  • چهار عملیات Async در چهار خط کد Four Async Ops in Four Lines of Code

  • ایمنی با Promise.resolve Safety with Promise.resolve

  • پرتاب خطاها به داخل مولد Throwing Errors Back into the Generator

  • گرفتن موارد استثنا پرتاب از ژنراتورها Catching Exceptions Throw from Generators

  • گرفتن خطاهای کنترل نشده در دستیار ما Catching Unhandled Errors in Our Assistant

  • دانستن اینکه دستیار چه زمانی انجام شده است Knowing When the Assistant Is Done

  • وای Wow

ES2018 Async/Await و سایر کتابخانه های کنترل جریان ژنراتور ES2018 Async/Await and Other Generator Control Flow Libraries

  • شرکت و Bluebird's Promise.coroutine co and Bluebird's Promise.coroutine

  • برنامه های وب سمت سرور Server Side Web Apps

  • Async و در انتظار Async and Await

  • چالش - درخواستهای موازی با Async در انتظار Challenge - Parallel Requests with Async Await

  • راه حل های موازی و گرفتن خطاهای عملکرد Async Parallel Solutions and Catching Async Function Errors

  • در انتظار قول. همه Awaiting Promise.all

  • چالش - نوید آزمون های A + و ES6 را می دهد Challenge - Promises A+ and ES6 Spec Tests

  • پیشنهاد نهایی - ارزش دوباره بازدید شده است The End - Value Proposition Revisited

نمایش نظرات

آموزش جاوا اسکریپت ناهمزمان مدرن
جزییات دوره
6h 35m
108
Pluralsight (پلورال سایت) Pluralsight (پلورال سایت)
(آخرین آپدیت)
102
4.5 از 5
دارد
دارد
دارد
Wes Higbee
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Wes Higbee Wes Higbee

وس هیگبی علاقه زیادی به کمک به شرکتها برای دستیابی به نتایج چشمگیر با فناوری و نرم افزار دارد. او تجربه زیادی در زمینه تولید نرم افزار و کار با تیم ها برای بهبود چگونگی تولید نرم افزار برای رسیدن به اهداف تجاری داشته است. وس Full City Tech را برای استفاده از تخصص خود جهت کمک به شرکتها در جلب رضایت مشتریان راه اندازی کرد. اگرچه تمرکز اصلی وی روی نتایج است ، اما اجرای آن اغلب شامل صلاحیت فنی است. وس به طور مکرر در مورد جنبه های تأثیرگذار توسعه نرم افزار از جمله آزمایش خودکار موثر ، اتوماسیون تحویل پایگاه داده ، کنترل نسخه توزیع شده ، بازسازی ، زیبایی شناسی کد ، ادغام مداوم و تحویل مداوم صحبت می کند. او به طور حرفه ای صحبت می کند تا به سازمان ها کمک کند تا پیشرفت کنند و در گروه های کاربر ، اردوگاه های کدگذاری و سازمان های جامعه داوطلب شوند. او یک نویسنده Pluralsight است. او به طور گسترده در مورد جنبه های فنی و غیر فنی توسعه نرم افزار می نویسد. کارهای مکتوب وی شامل مقالاتی است که در VeraSage ، MSDN Magazine ، InfoQ و JetBrain’s TeamCity Blog وجود دارد. با وی در نمایشگاه تجارت و هنر ارزش در مورد اهمیت اهمیت در توسعه نرم افزار مصاحبه شده است. و ، او گاهی اوقات در یک برنامه پخش مشترک یا وبینار بسیار فنی می شود.