تخفیف ویژه همین الان — دوره‌های تخفیف‌دار را ببینید.
روز
:
ساعت
:
دقیقه
:
ثانیه
تخفیف‌های ویژه
دوره آموزشی برنامه‌نویسی تابعی در سی پلاس پلاس

دوره آموزشی برنامه‌نویسی تابعی در سی پلاس پلاس

4 ساعت 25 دقیقهمتوسط2025-04-01

مدرسین

Troy Miles

Troy Miles

Award-winning Software Engineer, Speaker, and Author

جزئیات دوره

تو این دوره، اصول برنامه‌نویسی تابعی رو توی C++ مدرن با ویژگی‌هایی که تو نسخه‌های C++17، C++20 و C++23 معرفی شدن، بررسی می‌کنی. مدرس این دوره، تروی مایلز، بهت یاد می‌ده چطور با استفاده از ویژگی‌هایی مثل لامبداها، رنج‌ها، کروتین‌ها و کانسپت‌ها کدهایی بنویسی که مدولارتر، بیان‌گر و بیشتر بهینه باشن. توی این دوره، یاد می‌گیری چطور با استفاده از پایپ‌لاین‌های تابعی، متاپروگرمینگ و واژه‌نامه constexpr روش حل مشکلات توی C++ رو تغییر بدی. همچنین، مباحثی مثل برنامه‌نویسی واکنشی تابعی، الگوهای تطبیق و ترکیب سبک‌های تابعی و دستوری رو هم پوشش می‌ده تا بتونی تکنیک‌های پیشرفته C++ رو به خوبی یاد بگیری.

🎓 اهداف یادگیری:
استفاده از ویژگی‌های C++ مدرن مثل لامبداها، رنج‌ها و کروتین‌ها برای نوشتن کدهای تابعی کارآمدتر و بیان‌گرتر.
مقایسه مزایای برنامه‌نویسی تابعی در C++ با استفاده از راه‌حل‌های تابعی و دستوری برای حل مشکلات رایج.
ارزیابی استفاده از کانسپت‌ها و محدودیت‌های نوع برای اطمینان از برنامه‌نویسی ژنریک ایمن در C++20 و C++23.
ایجاد پایپ‌لاین‌های تابعی با استفاده از کتابخانه رنج‌ها برای تبدیل و پردازش داده‌ها به سرعت و بهینه.
ترکیب اصول برنامه‌نویسی تابعی با متاپروگرمینگ و استفاده از واژه‌نامه constexpr برای پیاده‌سازی محاسبات در زمان کامپایل و بهبود عملکرد.

مهارت ها

C++Programming FoundationsProgramming LanguagesOpen SourceSoftware DevelopmentOne-Off

سرفصل ها

0. مقدمه

  • 01 - مقدمه

1. برنامه نویسی تابعی در سی پلاس پلاس مدرن

  • 02 - برنامه نویسی تابعی چیست
  • 03 - لامبدا و بسته شدن
  • 04 - الگوریتم‌های استاندارد (تبدیل، مشاهده، تجمع)
  • 05 - تجمع و کاهش
  • 06 - کاربرد جزئی و کاری (std - - bind)
  • 07 - ترکیب توابع با الگوریتم‌های استاندارد کتابخانه
  • 08 - چالش - اضافه پیوسته فاکتوریل
  • 09 - حل - اضافه فاکتوریل پیوسته

2. مفاهیم و محدودیت‌های نوع در C++20

  • 10 - چرا مفاهیم
  • 11 - نحو مفهوم پایه
  • 12 - تعریف مفاهیم سفارشی
  • 13 - ترکیب مفاهیم
  • 14 - مفاهیم در مقابل SFINAE (Pre-C++20)
  • 15 - چالش - عملکرد محدود به مفاهیم
  • 16 - راه حل - تابع محدود شده توسط مفاهیم

3. Ranges and Pipelines در C++20 23

  • 17 - محدوده‌ها و خطوط لوله در C++20 23
  • 18 - چرا از محدوده‌ها استفاده‌کنیم (تبدیل یک مجموعه)
  • 19 - ترکیب فیلترها و تبدیل ها
  • 20 - ارزیابی تنبل با کوروتین‌ها (ژنراتور فیبوناچی بی نهایت)
  • 21 - ترکیب عملیات چند دامنه برای تبدیل مجموعه ها
  • 22 - چالش - یک خط لوله کاربردی بسازید
  • 23 - راه حل - ساخت یک خط لوله کاربردی

4. فرابرنامه نویسی قالب و constexpr

  • 24 - فرابرنامه نویسی قالب و constexpr
  • 25 - قالب‌های بازگشتی در C++
  • 26 - فاکتوریل با استفاده از constexpr
  • 27 - محاسبه زمان کامپایل پیشرفته - دنباله فیبوناچی
  • 28 - چرا ضرب ماتریس زمان کامپایل؟
  • 29 - چالش - اجرای فاکتوریل constexpr
  • 30 - راه حل - فاکتوریل constexpr را اجرا کنید

5. توابع و ترکیبات مرتبه بالاتر در C++23

  • 31 - مقدمه ای بر توابع درجه بالاتر
  • 32 - استفاده از std - - تابع move only برای توابع مرتبه بالاتر
  • 33 - ترکیب تابع با lambdas و std - - invoke
  • 34 - مزایای نوشتن توابع برای کدهای ماژولارتر
  • 35 - موارد استفاده در دنیای واقعی از توابع درجه بالاتر در ++C مدرن
  • 36 - چالش - خط لوله ترکیب تابع
  • 37 - راه حل - خط لوله ترکیب تابع

6. کتابخانه‌های برنامه نویسی کاربردی

  • 38 - استفاده از الگوریتم‌های تابعی با استفاده از STL
  • 39 - تبدیل و جمع بندی فهرست
  • 40 - فیلتر کردن مقادیر با std - - محدوده - - فیلتر (C++20)
  • 41 - دستکاری تاپل با Boost.Hana
  • 42 - ترکیب Boost.Hana با تکنیک‌های تابعی استاندارد در C++
  • 43 - چالش - فیلتر و تبدیل با STL و Boost.Hana
  • 44 - راه حل - فیلتر و تبدیل با STL و Boost.Hana

7. برنامه نویسی واکنشی تابعی

  • 45 - برنامه ریزی واکنشی تابعی
  • 46 - جریان RxCpp ساده
  • 47 - Coroutine با RxCpp و محدوده
  • 48 - پردازش جریان داده در زمان واقعی به روشی کاربردی
  • 49 - مزایای برنامه نویسی کاربردی برای مدیریت رویدادهای ناهمزمان
  • 50 - چالش - فرکانس شمار ورد با RxCpp
  • 51 - راه حل - فرکانس شمار ورد با RxCpp

8. تطبیق و انواع الگوها در C++23

  • 52 - مقدمه ای بر تطبیق الگو و ریشه‌های برنامه نویسی کاربردی آن
  • 53 - تطبیق الگوی پایه با متغیر std - -
  • 54 - سربارهای نوع خاص با std - - بازدید
  • 55 - بهبود وضوح کد با تکنیک‌های تطبیق الگو
  • 56 - کاربردهای std - - variant و std - - بازدید در سناریوهای دنیای واقعی
  • 57 - چالش - تطبیق الگو با std - - variant
  • 58 - راه حل - تطبیق الگو با std - - variant

9. کوروتین‌های پیشرفته و برنامه نویسی ناهمزمان

  • 59 - کوروتین‌های پیشرفته و برنامه نویسی ناهمزمان
  • 60 - مولد توالی تنبل با هم بازده
  • 61 - مدیریت وظایف ناهمزمان با کوروتین ها
  • 62 - ترکیب کوروتین‌ها با ارزیابی تنبل برای اجرای کارآمد
  • 63 - انجام وظایف همزمان به صورت عملکردی
  • 64 - چالش - مدیر وظیفه ناهمزمان
  • 65 - راه حل - مدیر وظایف ناهمزمان

10. ترکیب سبک‌های کاربردی و امری

  • 66 - ترکیب سبک‌های کاربردی و امری
  • 67 - خطوط لوله عملکردی با حلقه‌های ضروری
  • 68 - شبیه سازی داده‌های تغییرناپذیر با std - - shared ptr
  • 69 - تبدیل کد دستوری به یک سبک عملکردی برای وضوح
  • 70 - ایجاد تعادل در عملکرد و قابلیت نگهداری با استفاده از سبک‌های برنامه نویسی ترکیبی
  • 71 - چالش - کد امری را به یک سبک عملکردی تبدیل کنید
  • 72 - راه حل - کد امری را به یک سبک عملکردی تبدیل کنید

دوره های مرتبط

درباره ما

لینداکده یک بستر یادگیری پیشرو است که به افراد کمک می کند تا کسب و کار ، نرم افزار ، فناوری و مهارت‌های خلاقانه را برای دستیابی به اهداف شخصی و حرفه ای بیاموزد.

شماره تلفنکانال آپاراتپشتیبانی تلگرامکانال تلگرامپیج اینستاگرام

کلیه‌ی حقوق این سایت متعلق به لینداکده می باشد

قوانین و شرایط|حریم خصوصی

نماد الکترونیک enamad در صورت اتصال با آی‌پی داخل کشور، نمایش داده خواهد شد.
logo-samandehi - لوگو ساماندهی
zarinpal
zibal