دوره Cats Effect: ساخت سیستمهای مقیاسپذیر و مقاوم با اثرات فانکشنال همراه با فلشکارت آموزشی — ارائه روی فلش مموری
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره Cats Effect: ساخت سیستمهای مقیاسپذیر و مقاوم با اثرات فانکشنال
موضوع کلی: برنامه نویسی
موضوع میانی: اسکالا (Scala)
📋 سرفصلهای دوره
- 1. مبانی و مقدمات Cats Effect:
- 2. مقدمه ای بر برنامه نویسی تابعی و مزایای آن
- 3. مفاهیم اساسی در برنامه نویسی تابعی: pure functions, immutability
- 4. معرفی زبان Scala و نصب و راه اندازی محیط توسعه
- 5. مروری بر مفاهیم Scala: متغیرها، انواع دادهها، ساختارهای کنترلی
- 6. کار با Collections در Scala: List، Set، Map
- 7. مقدمه ای بر Cats و کتابخانه Cats Effect
- 8. نصب و راه اندازی Cats Effect در پروژه Scala
- 9. معرفی IO: اجرای اثرات (Effects) در Cats Effect
- 10. اولین گام ها با IO: create, run و handle خطاها
- 11. تفاوت IO با Future و ویژگیهای کلیدی آن
- 12. مفاهیم concurrency و parallelism در برنامه نویسی
- 13. Threading و Multithreading: مفاهیم و چالش ها
- 14. معرفی اثرات: تعریف و انواع اثرات (Side Effects)
- 15. بررسی کاربردهای اثرات در برنامه نویسی
- 16. اصول طراحی سیستم های مقاوم در برابر خطا
- 17. انواع خطاهای رایج در برنامه نویسی
- 18. تکنیک های مدیریت خطا و بازیابی
- 19. معرفی Fiber ها و اجرای موازی در Cats Effect
- 20. استفاده از Fiber برای اجرای وظایف به صورت concurrent
- 21. مدیریت منابع با استفاده از IO.bracket
- 22. مفاهیم و ابزارهای پیشرفته Cats Effect:
- 23. کار با Cancellation و مدیریت Task های در حال اجرا
- 24. معرفی Ref و AtomicReference برای اشتراک گذاری حالت
- 25. استفاده از Ref برای ساخت برنامه های stateful
- 26. کار با Semaphore و محدود کردن concurrency
- 27. استفاده از Concurrent Queue برای ارتباط بین Fiber ها
- 28. مدیریت منابع با Resource در Cats Effect
- 29. ایجاد و مدیریت منابع با Resource
- 30. اجتناب از Resource leak با استفاده از Resource
- 31. تست کردن کدهای مبتنی بر Cats Effect
- 32. معرفی و استفاده از Testkit در Cats Effect
- 33. تست های Unit و Integration با استفاده از Testkit
- 34. شناسایی و رفع خطاهای ناخواسته در تست ها
- 35. مقدمه ای بر Async و Deferred
- 36. استفاده از Async برای پیاده سازی callbacks و listeners
- 37. استفاده از Deferred برای همگام سازی و اطلاع رسانی
- 38. کار با Schedule و مدیریت زمانبندی در Cats Effect
- 39. استفاده از Schedule برای Retry و Exponential Backoff
- 40. طراحی برنامه های واکنش گرا (Reactive) با Cats Effect
- 41. معرفی و استفاده از Stream در Cats Effect
- 42. پیاده سازی Stream های داده با استفاده از Stream
- 43. پیاده سازی برنامه های کاربردی:
- 44. کار با Http4s و پیاده سازی سرویس های وب
- 45. ایجاد API های RESTful با استفاده از Http4s و Cats Effect
- 46. اعتبارسنجی ورودی ها در سرویس های وب
- 47. مدیریت Authentication و Authorization در وب اپلیکیشن ها
- 48. دسترسی به پایگاه داده با استفاده از Cats Effect
- 49. معرفی و استفاده از doobie برای دسترسی به پایگاه داده
- 50. عملیات CRUD با استفاده از doobie
- 51. مدیریت تراکنش ها با استفاده از doobie و Cats Effect
- 52. استفاده از Cats Effect در برنامه نویسی شبکه
- 53. پیاده سازی client و server با استفاده از TCP و UDP
- 54. پیاده سازی سیستم های توزیع شده با Cats Effect
- 55. معرفی و استفاده از Akka Streams با Cats Effect
- 56. ایجاد pipeline های داده با استفاده از Akka Streams
- 57. طراحی و پیاده سازی سیستم های Event-Driven
- 58. معرفی و استفاده از Kafka با Cats Effect
- 59. تولید و مصرف پیام ها با استفاده از Kafka و Cats Effect
- 60. پردازش داده های Real-time با Cats Effect
- 61. معرفی و استفاده از Spark با Cats Effect
- 62. پیاده سازی پردازش های Batch و Streaming با Spark
- 63. نظارت و لاگینگ در برنامه های Cats Effect
- 64. مدیریت و بهینه سازی برنامه ها:
- 65. بهینه سازی عملکرد برنامه های Cats Effect
- 66. پروفایل کردن برنامه های Scala و Cats Effect
- 67. شناسایی bottlenecks و نقاط ضعف در عملکرد
- 68. استفاده از تکنیک های پیشرفته concurrency برای بهبود عملکرد
- 69. مدیریت پیکربندی و تنظیمات در برنامه های Cats Effect
- 70. استفاده از کتابخانه های پیکربندی در Scala
- 71. طراحی و پیاده سازی API های قابل اطمینان
- 72. بهبود قابلیت اطمینان با استفاده از Pattern های طراحی
- 73. مدیریت Dependencies و Versioning
- 74. استفاده از sbt و maven برای مدیریت وابستگی ها
- 75. بهره گیری از CI/CD در توسعه نرم افزار
- 76. خودکارسازی تست، build و deployment
- 77. ایجاد داکیومنت و مستندات برای برنامه های Cats Effect
- 78. استفاده از scaladoc و کتابخانه های تولید داکیومنت
- 79. بهبود قابلیت Maintenance و توسعه پذیری کد
- 80. طراحی ماژولار و استفاده از interface ها
- 81. استفاده از Design Patterns در Cats Effect
- 82. معرفی و کاربرد الگوهای طراحی (Design Patterns)
- 83. مبانی Event Sourcing و CQRS
- 84. استفاده از CQRS و Event Sourcing با Cats Effect
- 85. مباحث پیشرفته و کاربردی:
- 86. مدیریت حالات (state) پیچیده در Cats Effect
- 87. استفاده از STM (Software Transactional Memory)
- 88. معرفی و استفاده از Monad Transformers
- 89. استفاده از ReaderT و WriterT برای مدیریت وابستگی ها
- 90. ایجاد DSL های اختصاصی در Cats Effect
- 91. پیاده سازی DSL ها برای domain-specific language
- 92. بررسی و مقایسه Cats Effect با RxJava و Akka
- 93. مقایسه performance و ویژگی های مختلف
- 94. بررسی معماری های Reactive و Functional
- 95. پیاده سازی معماری های event-driven
- 96. معرفی و استفاده از Effect Systems دیگر در Scala
- 97. بررسی ZIO و ویژگی های آن
- 98. مقایسه Cats Effect و ZIO
- 99. استفاده از Macros در Cats Effect
- 100. ایجاد کد های جنریک با Macros
محتویات بسته آموزشی
🌐 سامانه آنلاین فلشکارت؛ مرور هدفمند و هوشمند
اکانت ارائهشده، دسترسی به نسخه تحت وب سامانه فلشکارت ویژه این دوره را فراهم میکند. این سامانه از الگوریتم زمانبندی مرور SM-2 استفاده میکند و بر اساس ارزیابی شما از میزان یادآوری هر کارت، زمان مرورهای بعدی را تنظیم میکند.
به این ترتیب، کارتهای دشوارتر میتوانند زودتر مرور شوند و برای تثبیت مطالب در حافظه، برنامه مرور متناسبتری داشته باشید.
مدتزمان معادل آموزشی بر اساس برآورد این دوره در گواهی درج میشود.
گواهی دوزبانه با استعلام آنلاین
پس از تکمیل فعالیتهای لازم و تأیید درخواست، گواهی پایان دوره به زبان فارسی و انگلیسی صادر میشود. گواهی دارای لینک اختصاصی و QR Code برای بررسی و استعلام آنلاین است.
این گواهی صرفاً بهعنوان گواهی اتمام دوره آموزشی صادر میشود و معادل مدرک دانشگاهی، آکادمیک یا مدرک رسمی مورد تأیید نهادهای دولتی نیست. صدور آن منوط به تکمیل شرایط دوره و تأیید نهایی درخواست است.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.