آموزش قالب‌های مدرن C++: عمیق و جامع - آخرین آپدیت

دانلود Modern C++ Templates In Depth

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

آموزش جامع و تسلط بر تمپلیت‌های مدرن C++: تکنیک‌های پیشرفته برای کدنویسی کارآمد، قابل استفاده مجدد و جنریک

  • درک عمیق از اهمیت تمپلیت‌ها در C++، مزایا و کاربردهای کلیدی آن‌ها
  • فراگیری مفاهیم بنیادی تمپلیت‌ها، شامل سینتکس و کاربردهای اولیه
  • آموزش استنتاج آرگومان (argument deduction)، نمونه‌سازی (instantiation)، آرگومان‌های صریح تمپلیت (explicit template arguments) و آرگومان‌های پیش‌فرض
  • بررسی پارامترهای غیرنوعی تمپلیت (non-type template parameters)، سربارگذاری (overloading) و فرایند نمونه‌سازی برای تمپلیت‌های تابع و کلاس
  • آشنایی با روش‌های مختلف ارسال آرگومان، از جمله ارسال با ارجاع (by reference) و ارجاع فورواردینگ (forwarding reference)
  • به‌روزرسانی دانش خود با استانداردهای مدرن C++، شامل تمپلیت‌های الیاس (alias templates)، تمپلیت‌های متغیر (variadic templates) و لامبداهای تمپلیتی (template lambdas)

پیش‌نیازها:

آشنایی پایه با برنامه‌نویسی C++

به دوره جامع و تخصصی تمپلیت‌های مدرن C++ خوش آمدید! این دوره با هدف ارائه درک عمیق از تغییرات و پیشرفت‌های برنامه‌نویسی تمپلیت در C++ از نسخه C++11 تا C++20 طراحی شده است. شما در این دوره دانش و مهارت‌های لازم برای تسلط بر تکنیک‌های مدرن تمپلیت را کسب خواهید کرد.

در دو درس مفصل، با تمپلیت‌های الیاس C++11 آشنا می‌شوید و یاد می‌گیرید چگونه اعلان‌های پیچیده نوع را ساده‌سازی کرده و خوانایی کد را افزایش دهید. همچنین، extern templates را بررسی کرده و نقش آن‌ها را در کاهش زمان کامپایل درک خواهید کرد.

در پنج درس اختصاصی به تمپلیت‌های متغیر (variadic templates)، سینتکس، کاربردها و پیاده‌سازی آن‌ها می‌پردازیم. این دروس ابزارهایی را برای شما فراهم می‌کنند تا کدهای انعطاف‌پذیر و قابل استفاده مجددی بسازید که می‌توانند تعداد دلخواهی از آرگومان‌ها را مدیریت کنند. در ادامه، تغییرات معرفی شده در C++14 و C++17، از جمله قابلیت قدرتمند fold expressions و ویژگی auto non-type را فرا می‌گیرید که برنامه‌نویسی با تمپلیت‌ها را بیشتر ساده‌سازی می‌کند.

در بخش مربوط به C++20، با پارامترهای غیرنوعی تمپلیت (NTTP) و چگونگی بهبود انعطاف‌پذیری تمپلیت‌ها توسط آن‌ها آشنا می‌شوید. در سه درس جامع، لامبداهای تمپلیتی (template lambdas) را بررسی می‌کنیم و یاد می‌گیرید چگونه از آن‌ها برای کدنویسی فشرده‌تر و گویاتر استفاده کنید. این دوره با کاوش در ویژگی abbreviated auto به پایان می‌رسد که اعلان‌های نوع را ساده کرده و وضوح کد را افزایش می‌دهد.

این دوره نه تنها جنبه‌های نظری تمپلیت‌های مدرن C++ را پوشش می‌دهد، بلکه راهنمایی‌های عملی در مورد چگونگی به‌کارگیری این تکنیک‌ها در سناریوهای واقعی ارائه می‌دهد. کاربرد تمپلیت‌ها با مثال‌هایی از کتابخانه استاندارد C++ و سایر کتابخانه‌های C++ به نمایش گذاشته می‌شود. هدف این است که با استفاده از تمپلیت‌ها، کدی کارآمدتر، قابل نگهداری‌تر و گویاتر بنویسید.

در پایان این دوره، شما درک کاملی از ویژگی‌های تمپلیت‌های مدرن C++ پیدا کرده و قادر خواهید بود آن‌ها را به طور موثر در پروژه‌های خود به‌کار گیرید.


سرفصل ها و درس ها

مقدمه Introduction

  • اسلاید دک Slide Deck

  • چرا قالب‌ها – بخش اول Why Templates - I

  • چرا قالب‌ها – بخش دوم Why Templates - II

  • معرفی قالب‌ها Templates Introduction

قالب‌های تابع Function Templates

  • کد منبع Source Code

  • فایل دسته‌ای لغو تزئین نام‌ها Undecorate Names Batch File

  • قالب‌های تابع Function Templates

  • استنتاج آرگومان قالب و نمونه‌سازی Template Argument Deduction & Instantiation

  • قالب‌های تابع پایه Basic Function Templates

  • آرگومان‌های صریح قالب Explicit Template Arguments

  • آرگومان‌های پیش‌فرض Default Arguments

  • تبدیل‌های آرگومان Argument Conversions

  • قالب‌ها با مشخص‌کننده‌ها Templates With Specifiers

  • پارامترهای قالب غیرنوعی Non-Type Template Parameters

  • سربارگذاری قالب‌های تابع Overloading Function Templates

  • تخصص‌سازی صریح Explicit Specialization

  • تخصص‌سازی صریح Explicit Specialization

  • بازبینی سربارگذاری Overloading Revisited

  • نمونه‌سازی قالب Template instantiation

  • مبانی نمونه‌سازی صریح Explicit Instantiation Basics

  • کاربرد نمونه‌سازی صریح – بخش اول Explicit Instantiation Usage - I

  • کاربرد نمونه‌سازی صریح – بخش دوم Explicit Instantiation Usage - II

  • نمونه‌سازی صریح Explicit Instantiation

  • مدل کامپایل قالب Template Compilation Model

  • قالب‌های extern extern Templates

  • متغیرهای استاتیک در قالب‌های تابع Static Variables In Function Templates

  • آزمون Quiz

قالب‌های کلاس Class Templates

  • کد منبع Source Code

  • مقدمه‌ای بر قالب‌های کلاس Introduction to Class Templates

  • مثال قالب کلاس – بخش اول Class Template Example - I

  • مثال قالب کلاس – بخش دوم Class Template Example - II

  • مثال قالب کلاس – بخش سوم Class Template Example - III

  • استنتاج آرگومان قالب کلاس Class Template Argument Deduction

  • نمونه‌سازی قالب کلاس Class Template Instantiation

  • قالب‌های کلاس extern extern Class Templates

  • اعضای استاتیک Static Members

  • تخصص‌سازی صریح توابع عضو Explicit Specialization Of Member Functions

  • تخصص‌سازی صریح قالب‌های کلاس – بخش اول Explicit Specialization of Class Templates - I

  • تخصص‌سازی صریح قالب‌های کلاس – بخش دوم Explicit Specialization of Class Templates - II

  • تخصص‌سازی صریح قالب‌های کلاس – بخش سوم Explicit Specialization of Class Templates - III

  • آرگومان‌های قالب کلاس غیرنوعی Non-Type Class Template Arguments

  • تخصص‌سازی جزئی – بخش اول Partial Specialization - I

  • تخصص‌سازی جزئی – بخش دوم Partial Specialization - II

  • تخصص‌سازی جزئی – بخش سوم Partial Specialization - III

  • تخصص‌سازی Specialization

  • آزمون Quiz

ارسال آرگومان‌ها Passing Arguments

  • کد منبع Source Code

  • انواع پارامتر – بخش اول Parameter Types - I

  • انواع پارامتر – بخش دوم Parameter Types - II

  • رفرنس‌های فورواردینگ Forwarding References

تغییرات قالب در C++11 Template Changes In C++11

  • کد منبع Source Code

  • مروری بر تغییرات C++ مدرن Modern C++ Changes Overview

  • براکت زاویه راست Right Angle Bracket

  • تعریف‌های نوع Type Definitions

  • نام مستعار نوع و قالب نام مستعار Type Alias & Alias Template

  • قالب‌های extern extern Templates

  • قالب‌های ورییدی Variadic Templates

  • مثال قالب‌های ورییدی Variadic Templates Example

  • عملگر sizeof... sizeof... Operator

  • کلاس‌های ورییدی Variadic Classes

  • کاربردهای قالب‌های ورییدی Variadic Templates Applications

  • قالب‌های ورییدی Variadic Templates

تغییرات قالب در C++14/17 Template Changes in C++14/17

  • کد منبع Source Code

  • C++14 – قالب متغیر و لامبدای عمومی C++14 - Variable Template & Generic Lambda

  • if در زمان کامپایل Compile-time if

  • عبارت‌های Fold Fold Expressions

  • جای‌گیرنده نوع auto auto Type Placeholder

تغییرات قالب در C++20 Template Changes in C++20

  • کد منبع Source Code

  • پارامترهای قالب غیرنوعی Non-Type Template Parameters

  • پارامترهای قالب در عبارت‌های لامبدا – بخش اول Template Parameters In Lambda Expressions - I

  • پارامترهای قالب در عبارت‌های لامبدا – بخش دوم Template Parameters In Lambda Expressions - II

  • auto خلاصه‌شده Abbreviated auto

آزمون برای قالب‌های C++11/14/17/20 Quiz for C++11/14/17/20 Templates

  • آزمون Quiz

پروژه Project

  • کد منبع Source Code

  • مروری بر پروژه Project Overview

  • پیاده‌سازی متد افزودن و چاپ Add & Print Method Implementation

  • پیمایش Traversal

  • تست واحد Unit Testing

  • متد درج Insert Method

  • متد حذف Erase Method

  • سفارشی‌سازی چاپ Print Customization

  • مدرن‌سازی Modernizing

  • سخنرانی ویژه BONUS LECTURE

نمایش نظرات

آموزش قالب‌های مدرن C++: عمیق و جامع
جزییات دوره
6 hours
75
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
140
4.4 از 5
دارد
دارد
دارد
Umar Lone
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Umar Lone Umar Lone

مربی ، توسعه دهنده و بنیانگذار مهندس Poash TechnologiesCivil که خواست خود را در توسعه نرم افزار یافت. هرگز به عنوان مهندس عمران کار نکرده ، در اولین فرصت پرش کرده و از 15 سال پیش تدریس C ++ و Visual C ++ را شروع کردم. در حال حاضر ، متخصصان نرم افزار را در شرکت های مختلف نرم افزاری در فن آوری های مختلف مانند Modern C ++ ، Advanced C ++ ، STL ، Design Patterns ، Android ، Unity ، Linux و ... آموزش می دهد. بسیار علاقه مند به تدریس است و بیش از 20،000 متخصص نرم افزار را در حرفه تدریس آموزش داده است بیش از 17 سال طول می کشد. یک گیمر مشتاق ، در حال حاضر تلاش خود را برای توسعه بازی در Unity & Unreal انجام می دهد. چند برنامه اندرویدی به اعتبار خود دارد ، از جمله یکی در Design Patterns. تنها چیزی که او بیش از C ++ دوست دارد ، C ++ مدرن است.