اپلیکیشن اندرویدی فلشکارت آموزشی Typescript: استفاده از Iterators
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره Typescript: استفاده از Iterators
موضوع کلی: برنامه نویسی
موضوع میانی: تایپ اسکریپت (TypeScript)
📋 سرفصلهای دوره
- 1. مقدمهای بر تایپاسکریپت و چرایی استفاده از آن
- 2. نصب و راهاندازی محیط توسعه تایپاسکریپت
- 3. مروری بر انواع دادهای پایه در تایپاسکریپت
- 4. توابع و امضاهای تابع در تایپاسکریپت
- 5. کلاسها و وراثت در تایپاسکریپت
- 6. اینترفیسها و کاربرد آنها
- 7. تایپهای توصیفی (Type Aliases)
- 8. مقدمهای بر Generics در تایپاسکریپت
- 9. حلقههای `for...of` در جاوااسکریپت/تایپاسکریپت
- 10. حلقههای `for...in` و تفاوت آن با `for...of`
- 11. مفهوم شیء Iterables در جاوااسکریپت
- 12. مفهوم Iterators در جاوااسکریپت
- 13. `Symbol.iterator` و نقش آن
- 14. Iterablesهای داخلی جاوااسکریپت (آرایهها، رشتهها، Map، Set)
- 15. Iterator چیست؟ تعریف و کاربرد در تایپاسکریپت
- 16. اینترفیس `Iterator<T>` در تایپاسکریپت
- 17. اینترفیس `Iterable<T>` در تایپاسکریپت
- 18. اینترفیس `IteratorResult<T>` (خواص `value` و `done`)
- 19. پیادهسازی دستی اینترفیس `Iterator`
- 20. ساخت اشیاء Iterable سفارشی
- 21. متد `next()` در Iterators: توضیحات کامل
- 22. درک `done: true` در مقابل `done: false`
- 23. پیمایش اشیاء سفارشی با `for...of`
- 24. Iterablesهای داخلی تایپاسکریپت با `Symbol.iterator`
- 25. پیمایش یک رشته کاراکتر به کاراکتر
- 26. ایجاد Iterators سفارشی برای آرایهها با منطق خاص
- 27. پیمایش Map: کلیدها، مقادیر، و جفتها
- 28. پیمایش Set: مقادیر
- 29. استنتاج نوع (Type Inference) با Iterators
- 30. ایمنی نوع (Type Safety) با `IteratorResult`
- 31. معرفی توابع Generator
- 32. سینتکس `function*`
- 33. کلمه کلیدی `yield`
- 34. مثالهای ساده توابع Generator
- 35. Generatorها به عنوان تولیدکننده Instances از Iterator
- 36. استفاده از `for...of` با توابع Generator
- 37. `yield*` برای تفویض اختیار به Generatorها یا Iterables دیگر
- 38. ارسال مقادیر به Generatorها با `next(value)`
- 39. ارسال خطاها به Generatorها با متد `throw()`
- 40. بستن Generatorها با متد `return()`
- 41. Generatorها برای ایجاد دنبالههای بینهایت
- 42. ارزیابی تنبل (Lazy Evaluation) با Generatorها
- 43. موارد استفاده عملی از Generatorها
- 44. ترکیب چندین Iterator
- 45. فیلتر کردن Iterables با منطق سفارشی
- 46. Map کردن Iterables به مقادیر جدید
- 47. Zipping (ترکیب موازی) چندین Iterable
- 48. Flatten کردن Iterables تودرتو
- 49. ساخت یک Iterator برای محدوده عددی
- 50. پیادهسازی Iterator "Take" (محدود کردن تعداد آیتمها)
- 51. پیادهسازی Iterator "Skip" (رد کردن تعداد مشخصی از آیتمها)
- 52. ساخت یک Iterator قابل Peek کردن
- 53. Iterators برای پیمایش درخت (DFS, BFS)
- 54. Iterators برای پیمایش گراف
- 55. Iterators سفارشی برای ساختارهای داده (لیست پیوندی، صف، پشته)
- 56. Iterators برای پردازش مجموعه دادههای بزرگ (بهرهوری حافظه)
- 57. مقدمهای بر Asynchronous Iterators
- 58. `Symbol.asyncIterator`
- 59. حلقههای `for await...of`
- 60. توابع Async Generator (`async function*`)
- 61. تفاوت `yield` و `await yield` در Async Generatorها
- 62. مثالهای عملی از Async Iterators (مثلاً: Stream کردن داده)
- 63. مدیریت خطا در Async Iterators
- 64. متدهای `values()`, `keys()`, `entries()` در `Array.prototype`
- 65. متدهای `values()`, `keys()`, `entries()` در `Map.prototype`
- 66. متدهای `values()`, `keys()`, `entries()` در `Set.prototype`
- 67. متد `String.prototype[Symbol.iterator]()`
- 68. `NodeList` و سایر Iterablesهای DOM
- 69. Iterators برای `TypedArray`
- 70. سفارشیسازی رفتار پیمایش انواع داخلی
- 71. استفاده از `Array.from()` با Iterables
- 72. گسترش Iterables (Spread Syntax `...`)
- 73. ساختارشکنی (Destructuring) با Iterables
- 74. `Promise.allSettled` و ورودیهای Iterable-مانند
- 75. مفاهیم برنامهنویسی ریاکتیو و Iterators (مقدمهای بر RxJS/Observables)
- 76. ساخت رفتار Stream-مانند سفارشی با Iterators
- 77. الگوی طراحی Iterator در برنامهنویسی شیءگرا
- 78. چه زمانی از Iterators در مقابل آرایههای ساده استفاده کنیم؟
- 79. ملاحظات عملکردی برای Iterators سفارشی
- 80. بهینهسازی حافظه با Iterators تنبل
- 81. اشکالزدایی Iterators و Generatorها
- 82. تستنویسی برای Iterators سفارشی
- 83. کارخانههای (Factories) Iterator ایمن از نظر نوع
- 84. مدیریت وضعیت قابل تغییر (Mutable State) در Iterators
- 85. Iterators و تغییرناپذیری (Immutability): بهترین شیوهها
- 86. طراحی APIهای expressive برای Iterators
- 87. مستندسازی Iterators سفارشی
- 88. اشتباهات رایج در استفاده از Iterators و Generatorها
- 89. بازآرایی کد برای وضوح بیشتر با استفاده از Iterators
- 90. پیادهسازی یک سینتکس query شبیه LINQ با Iterators
- 91. Iterators در خطوط لوله پردازش داده
- 92. ساخت یک Event Emitter ساده با Generatorها
- 93. Task Runnerها و Orchestratorها با استفاده از Generatorها/Iterators
- 94. ماشینهای حالت (State Machines) با Generatorها
- 95. ایجاد یک Stream شبیه Observable از یک Iterator
- 96. یکپارچهسازی Iterators با فریمورکهای UI (مثلاً: React hooks برای واکشی داده)
- 97. مثال عملی: پیادهسازی یک Parser فایل با Iterators
- 98. مثال عملی: ساخت یک سیستم Pagination سفارشی با Async Iterators
- 99. مقایسه Iterators با سایر مکانیزمهای کنترل جریان
- 100. بهترین شیوهها برای پروژههای بزرگ تایپاسکریپت با استفاده از Iterators
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.