30 نوامبر 2023 - این دوره در حال توسعه است
به دنیای برنامه نویسی ناهمزمان خوش آمدید!!
برنامه نویسی ناهمزمان در هر جایی که برنامه شما با دیگر موجودیت های خارجی تعامل داشته باشد استفاده می شود - چه رشته های دیگر، چه فرآیندهای دیگر. این جهان طبیعتاً ناهمزمان است. ناهمزمان در لغت به معنای - هر چیزی ممکن است در هر زمان رخ دهد - غیر قابل پیش بینی است. چگونه از طریق برنامه نویسی Asynchronous نرم افزار بنویسید؟ این چیزی است که ما در این دوره خواهیم آموخت. پروژه های نرم افزاری بزرگ با اندازه های معقول ناهمزمان هستند. پروژههای نرمافزاری از لحظهای که شروع به یکپارچهسازی و برقراری ارتباط با موجودیتهای خارجی یا چند رشتهای میکنند، مرزهای همزمان خود را ترک میکنند.
برنامه نویسی ناهمزمان به طور گسترده در سیستم های توزیع شده، پروتکل های شبکه، پایگاه های داده توزیع شده و غیره استفاده می شود.
پیش نیاز این دوره:
مفاهیم همگامسازی رشته را بشناسید - Mutexes و متغیرهای شرط (هر کتابخانه رشتهای، اما ما از pthread استفاده خواهیم کرد)
C یا C++ ترجیح داده می شود، اما اگر زبان مورد علاقه شما هر زبان رایج دیگری است، مشکلی ندارد. مفاهیم را قرض بگیرید و به زبان مورد علاقه خود پیاده سازی کنید.
راحتی با ساختارهای داده پایه مانند Linked-List.
علت یادگیری و برتری - فراتر از کاری که Crowd انجام می دهد (DS/ALGO/CP)
محصول نهایی این دوره باید یک کتابخانه کوچک و در عین حال کتابخانه بسیار قدرتمندی باشد که به شما امکان می دهد نرم افزار را از طریق برنامه نویسی ناهمزمان توسعه دهید.
سطح دشواری دوره:
سطح دوره از متوسط تا پیشرفته است. خیلی مبتدیان لطفا از ثبت نام در دوره خودداری کنند.
مشکلات طراحی نرم افزار برای حل این دوره:
مشکل 1. شبیه سازی همزمانی در برنامه های تک رشته ای
مشکل 2. کاهش برنامه های چند رشته ای به تک رشته ای
مشکل 3. تعویق کار
مشکل 4. ارتباط ناهمزمان
مشکل 5. صف بندی و پردازش بسته های شبکه ورودی
فهرست مطالب قدیمی:
1. برنامه نویسی همزمان چیست؟
2. برنامه نویسی ناهمزمان چیست؟
3. چه زمانی از برنامه نویسی ناهمزمان استفاده کنیم؟
4. پیش نیازها
5. توسعه یک پروژه مبتنی بر برنامه نویسی ناهمزمان
6. افزودن ورودی کاربر CLI
7. افزودن موضوعات شنونده
8. اضافه کردن تایمر
9. افزودن تبلیغات دوره ای
10. تجزیه و تحلیل مشکلات در پروژه ها
11. طراحی توزیع کننده رویداد (که حلقه رویداد نیز نامیده می شود) (ED)
12. ادغام Event Dispatcher در پروژه
13. سریال کردن ورودی CLI کاربر با استفاده از ED
14. سریالسازی رویدادهای داخلی تایمر با استفاده از ED
15. سریال سازی پردازش بسته با استفاده از ED
16. سریال سازی تبلیغات دوره ای
17. توزیع رویداد با استفاده از ED
18. پردازش جزئی پیشرونده با استفاده از ED
19. در حال تجزیه و تحلیل پروژه ما
20. آینده ها و وعده ها
21. Promises Pipeline and Combinators
22. استخرهای موضوع
23. همزمان در مقابل ناهمزمان در مقابل همزمانی
24. ایجاد موضوعات کارگری برای کارهای گران قیمت
موفق باشید! یادگیری مبارک.
پس از انجام این دوره، متوجه خواهید شد:
مشکلات برنامه نویسی همزمان
طراحی و پیاده سازی برنامه/نرم افزارهای ناهمزمان
چه نوع برنامهها/نرمافزارهایی نباید چند رشتهای باشند
چه نوع برنامهها/نرمافزارهایی باید ناهمزمان باشند
برای همیشه با قفل و همگام سازی رشته خداحافظی کنید.
مفاهیمی که در این دوره یاد می گیرید برای سایر زبان های برنامه نویسی انتخابی شما قابل حمل هستند
نمایش نظرات