کتاب برنامهنویسی همزمان (Concurrency) با اصول تابعی با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
دوره آموزشی برنامهنویسی همزمان با اصول تابعی به سوی برنامهنویسی قدرتمند: تسلط بر همزمانی با قدرت اصول تابعی معرفی دوره: انقلابی در کدنویسی خود ایجاد کنید! آیا از پیچیدگیهای مدیریت نخها (Threads) و...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره برنامهنویسی همزمان (Concurrency) با اصول تابعی
موضوع کلی: برنامه نویسی
موضوع میانی: برنامهنویسی تابعی (Functional Programming)
📋 سرفصلهای دوره
- 1. مقدمه ای بر برنامه نویسی تابعی و همروندی
- 2. مفاهیم پایه برنامه نویسی تابعی: توابع خالص
- 3. توابع خالص: بررسی ویژگی ها و مزایا
- 4. تغییرناپذیری (Immutability): چرا مهم است؟
- 5. متغیرهای تغییرناپذیر: ایجاد و استفاده
- 6. توابع مرتبه بالا (Higher-Order Functions): تعریف و کاربرد
- 7. توابع به عنوان آرگومان: پاس دادن رفتار
- 8. توابع به عنوان مقدار بازگشتی: ایجاد توابع پویا
- 9. Lambda Expressions: توابع بی نام
- 10. Closure ها: دسترسی به متغیرهای محیطی
- 11. Composition: ترکیب توابع
- 12. Currying: تبدیل توابع چند آرگومانی
- 13. Partial Application: اعمال بخشی از آرگومانها
- 14. Recursion: بازگشت در برنامه نویسی تابعی
- 15. Tail Recursion Optimization: بهینه سازی بازگشت
- 16. Lazy Evaluation: ارزیابی تنبل
- 17. Memoization: ذخیره نتایج توابع برای بهبود کارایی
- 18. معرفی همروندی (Concurrency)
- 19. Parallelism vs Concurrency: تفاوت ها و شباهت ها
- 20. Thread ها: ایجاد و مدیریت
- 21. Multi-threading: مزایا و معایب
- 22. Thread Synchronization: جلوگیری از Race Conditions
- 23. Locks: مکانیزم های قفل گذاری
- 24. Mutexes: انحصار متقابل
- 25. Semaphores: کنترل دسترسی به منابع
- 26. Condition Variables: سیگنال دهی بین Thread ها
- 27. Deadlock: تشخیص و جلوگیری از بن بست
- 28. Livelock: تشخیص و جلوگیری از Livelock
- 29. Race Condition: بررسی و رفع خطا
- 30. Memory Model: درک نحوه اشتراک گذاری حافظه
- 31. Atomicity: عملیات اتمی
- 32. Volatile Variables: اطمینان از دیدهشدن تغییرات
- 33. Thread Pools: مدیریت و استفاده از Thread ها
- 34. Executor Services: اجرای غیرهمزمان وظایف
- 35. Future Objects: دریافت نتایج محاسبات غیرهمزمان
- 36. CompletableFuture: ترکیب و مدیریت عملیات غیرهمزمان
- 37. Async Programming: برنامه نویسی ناهمزمان
- 38. Callbacks: توابع پاسخ
- 39. Promises: قول ها
- 40. Await/Async: ساده سازی برنامه نویسی ناهمزمان
- 41. Data Races: مسابقه داده ها
- 42. Functional Concurrency: همروندی با رویکرد تابعی
- 43. Immutability and Concurrency: استفاده از تغییرناپذیری برای همروندی
- 44. Actors Model: مدل بازیگران
- 45. Message Passing: انتقال پیام بین Actors
- 46. Actor Systems: ایجاد و مدیریت Actors
- 47. Erlang/Elixir: معرفی زبان های همروند تابعی
- 48. Software Transactional Memory (STM): حافظه تراکنشی نرم افزاری
- 49. Atomic Transactions: تراکنش های اتمی
- 50. Retry Mechanism: مکانیزم تلاش مجدد
- 51. Lock-Free Data Structures: ساختارهای داده بدون قفل
- 52. Concurrent Collections: کالکشن های همزمان
- 53. Copy-on-Write Arrays: آرایه های کپی هنگام نوشتن
- 54. Immutable Data Structures for Concurrency: ساختارهای داده تغییرناپذیر برای همروندی
- 55. Functional Reactive Programming (FRP): برنامه نویسی واکنش گرای تابعی
- 56. Streams: جریان داده ها
- 57. Signals: سیگنال ها
- 58. Observables: قابل مشاهده ها
- 59. RxJava/RxSwift/Reactor: معرفی کتابخانه های FRP
- 60. Backpressure: مدیریت فشار برگشتی
- 61. Time-Based Concurrency: همروندی مبتنی بر زمان
- 62. Schedulers: زمانبندها
- 63. Timers: تایمرها
- 64. Rate Limiting: محدود کردن نرخ
- 65. Debouncing and Throttling: حذف لرزش و محدود کردن
- 66. Parallel Collections: کالکشن های موازی
- 67. Parallel Streams: جریان های موازی
- 68. Fork/Join Framework: چارچوب Fork/Join
- 69. Divide and Conquer: تقسیم و غلبه
- 70. Map/Reduce: نگاشت و کاهش
- 71. Spark: معرفی Apache Spark
- 72. Flink: معرفی Apache Flink
- 73. Concurrency Testing: تست همروندی
- 74. Testing Strategies for Concurrent Code: استراتژی های تست
- 75. Property-Based Testing: تست مبتنی بر ویژگی
- 76. Model Checking: بررسی مدل
- 77. Debugging Concurrent Code: اشکال زدایی کد همروند
- 78. Thread Dumps: بررسی Thread Dumps
- 79. Profiling Concurrent Applications: پروفایل کردن برنامه های همروند
- 80. Common Concurrency Patterns: الگوهای رایج همروندی
- 81. Producer/Consumer: تولید کننده/مصرف کننده
- 82. Reader/Writer: خواننده/نویسنده
- 83. Bounded Buffer: بافر محدود
- 84. Comparing Concurrency Approaches: مقایسه رویکردهای همروندی
- 85. Choosing the Right Concurrency Model: انتخاب مدل همروندی مناسب
- 86. Performance Considerations: ملاحظات عملکردی
- 87. Scalability: مقیاس پذیری
- 88. Thread Safety: ایمنی Thread
- 89. Avoiding Common Pitfalls: اجتناب از اشتباهات رایج
- 90. Real-World Concurrency Examples: مثال های عملی همروندی
- 91. Building Concurrent Applications: ساخت برنامه های همروند
- 92. Best Practices for Functional Concurrency: بهترین شیوه ها
- 93. Functional Concurrency in Modern Languages: همروندی تابعی در زبان های مدرن
- 94. Java Concurrency Utilities: ابزارهای همروندی Java
- 95. Kotlin Coroutines: کروتین های Kotlin
- 96. Scala Futures and Actors: فیوچرها و بازیگران Scala
- 97. JavaScript Async/Await: Async/Await در JavaScript
- 98. Python Asyncio: Asyncio در Python
- 99. Go Channels and Goroutines: کانال ها و Goroutine ها در Go
- 100. Functional Concurrency Libraries: کتابخانه های همروندی تابعی
تگها:
آموزش آنلاین
برنامه نویسی
برنامهنویسی تابعی (Functional Programming)
برنامهنویسی همزمان (Concurrency) با اصول تابعی
دوره آموزشی
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.