برنامهنویسی تابعی در سی پلاس پلاس
✅ سرفصل و جزئیات آموزش
کاربرد اصول برنامهنویسی تابعی در سی پلاس پلاس مدرن را بررسی کنید، با ویژگیهایی که در سی پلاس پلاس 17، 20 و 23 معرفی شد. مدرس این دوره، تروئی مایلز، به شما میآموزد چگونه میتوانید کدهایی ماژولار، گویا و کارآمدتر با ویژگیهایی مانند لامبداها، محدودهها، کوروتینها و مفاهیم بنویسید. در طول این دوره کشف خواهید کرد چگونه پایپلاینهای تابعی، برنامهنویسی متا و constexpr specifier میتوانند رویکرد شما به حل مسئله در سی پلاس پلاس را متحول کنند. این دوره همچنین برنامهنویسی تابعی واکنشگرا، تطبیق الگو و یکپارچهسازی سبکهای تابعی و دستوری را پوشش میدهد تا به شما در تسلط به تکنیکهای پیشرفته سی پلاس پلاس کمک کند.
این دوره با GitHub Codespaces یکپارچه شده است، محیط توسعه ابری فوری که تمام قابلیتهای IDE مورد علاقهتان را بدون نیاز به راهاندازی ماشین محلی ارائه میدهد. با GitHub Codespaces، میتوانید از هر دستگاهی و در هر زمان به یادگیری عملی بپردازید و همزمان از ابزاری استفاده کنید که احتمالاً در محیط کار خود با آن مواجه خواهید شد.
برنامهنویسی تابعی در سی پلاس پلاس
-
مقدمه 0:00:52
-
برنامهنویسی تابعی چیست؟ 0:01:38
-
لامبداها و closureها 0:00:53
-
الگوریتمهای استاندارد (تبدیل، viewها، جمع آوری) 0:04:03
-
جمعآوری و کاهش 0:06:33
-
کاربرد جزئی و currying (std::bind) 0:02:50
-
کامپوزینگ توابع با الگوریتمهای کتابخانه استاندارد 0:03:04
-
چالش: جمع پیوسته فاکتوریل 0:00:45
-
راهحل: جمع پیوسته فاکتوریل 0:04:33
-
چرا مفاهیم؟ 0:00:49
-
سینتکس اولیه مفهوم 0:04:03
-
تعریف مفاهیم سفارشی 0:04:56
-
ترکیب مفاهیم 0:04:24
-
مفاهیم در مقابل SFINAE (قبل از سی پلاس پلاس 20) 0:03:23
-
چالش: تابع محدود شده با مفاهیم 0:00:21
-
راهحل: تابع محدود شده با مفاهیم 0:02:45
-
محدودهها و پایپلاینها در سی پلاس پلاس 20 و 23 0:00:57
-
چرا از محدودهها استفاده کنیم؟ (تبدیل یک کالکشن) 0:02:47
-
ترکیب فیلترها و تبدیلها 0:03:48
-
ارزیابی Lazy با کوروتینها (ژنراتور بینهایت فیبوناچی) 0:13:25
-
ترکیب عملیاتهای متعدد محدودهها برای تبدیل کالکشنها 0:04:38
-
چالش: ساخت یک پایپلاین تابعی 0:00:42
-
راهحل: ساخت یک پایپلاین تابعی 0:03:44
-
قالب برنامهنویسی متا و constexpr 0:00:43
-
الگوهای بازگشتی در سی پلاس پلاس 0:03:38
-
فاکتوریل با constexpr 0:03:14
-
محاسبات پیشرفته زمان کامپایل: دنباله فیبوناچی 0:02:41
-
چرا ضرب ماتریکس زمان کامپایل؟ 0:06:25
-
چالش: پیادهسازی فاکتوریل constexpr 0:00:29
-
راهحل: پیادهسازی فاکتوریل constexpr 0:02:08
-
آشنایی با توابع Higher-Order 0:00:37
-
استفاده از std::move_only_function برای توابع Higher-Order 0:04:01
-
کامپوزیشن تابع با لامبداها و std::invoke 0:04:29
-
مزایای کامپوزینگ توابع برای نوشتن کد ماژولارتر 0:04:07
-
موارد استفاده واقعی از توابع Higher-Order در سی پلاس پلاس مدرن 0:02:31
-
چالش: پایپلاین کامپوزیشن تابع 0:00:38
-
راهحل: پایپلاین کامپوزیشن تابع 0:03:48
-
استفاده از الگوریتمهای سبک تابعی با STL 0:01:11
-
تبدیل و جمع یک لیست 0:03:49
-
فیلترینگ مقادیر با std::ranges::filter (سی پلاس پلاس 20) 0:03:15
-
دستکاری تاپل با Boost.Hana 0:06:40
-
ترکیب Boost.Hana با تکنیکهای تابعی استاندارد در سی پلاس پلاس 0:02:16
-
چالش: فیلترینگ و تبدیل با STL و Boost.Hana 0:01:11
-
راهحل: فیلترینگ و تبدیل با STL و Boost.Hana 0:08:33
-
برنامهنویسی تابعی واکنشگرا 0:01:04
-
استریم RxCpp ساده 0:02:57
-
کوروتین با RxCpp و محدودهها 0:07:40
-
پردازش بلادرنگ استریم داده به شیوه تابعی 0:05:09
-
مزایای برنامهنویسی تابعی برای مدیریت رویدادهای غیرهمزمان 0:09:05
-
چالش: شمارنده فراوانی کلمه با RxCpp 0:00:27
-
راهحل: شمارنده فراوانی کلمه با RxCpp 0:05:46
-
آشنایی با تطبیق الگو و ریشههای برنامهنویسی تابعی آن 0:00:49
-
تطبیق الگوی اولیه با std::variant 0:04:27
-
بارگذاری بیش از حد نوع خاص با std::visit 0:05:27
-
بهبود وضوح کد با تکنیکهای تطبیق الگو 0:03:46
-
کاربردهای std::variant و std::visit در سناریوهای واقعی 0:06:43
-
چالش: تطبیق الگو با std::variant 0:00:55
-
راهحل: تطبیق الگو با std::variant 0:06:09
-
کوروتینهای پیشرفته و برنامهنویسی غیرهمزمان 0:00:39
-
ژنراتور توالی Lazy با co_yield 0:08:02
-
مدیریت غیرهمزمان تسک با کوروتینها 0:10:18
-
ترکیب کوروتینها با ارزیابی Lazy برای اجرای کارآمد تسک 0:04:13
-
مدیریت تسکهای همزمان به شیوه تابعی 0:07:30
-
چالش: مدیر وظایف غیرهمزمان 0:00:59
-
راهحل: مدیر وظایف غیرهمزمان 0:04:27
-
ترکیب سبکهای تابعی و دستوری 0:00:57
-
پایپلاینهای تابعی با حلقههای دستوری 0:04:38
-
Emulate کردن داده غیرقابل تغییر با std::shared_ptr 0:03:52
-
ریفکتورینگ کد دستوری به سبک تابعی برای وضوح 0:03:11
-
ایجاد تعادل بین عملکرد و نگهداری با سبکهای برنامهنویسی هیبریدی 0:04:56
-
چالش: ریفکتورینگ کد دستوری به سبک تابعی 0:00:37
-
راهحل: ریفکتورینگ کد دستوری به سبک تابعی 0:07:39
مشخصات آموزش
برنامهنویسی تابعی در سی پلاس پلاس
- تاریخ به روز رسانی: 1404/06/14
- سطح دوره:متوسط
- تعداد درس:72
- مدت زمان :4:25:24
- حجم :685.0MB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy