آموزش به سوی سی پلاس پلاس مدرن حرکت کنید - آخرین آپدیت

دانلود Move to Modern C++

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

بهبود و ارتقای مهارت‌های ++C شما

مهارت‌های ++C خود را تقویت کنید! این دوره برای توسعه‌دهندگان ++C است که می‌خواهند مهارت‌های خود را به‌روزرسانی کنند، به خصوص کسانی که چند سالی است از زبان‌های دیگر استفاده می‌کنند.

آنچه در این دوره می‌آموزید:

  • بهبود دانش قبلی ++C
  • ویژگی‌های جدید زبان در ++C مدرن
  • نحوه استفاده از ++C مدرن برای نوشتن کد ایمن‌تر، رسا‌تر و کارآمدتر
  • نحوه نوشتن کد چند نخی در ++C مدرن

پیش‌نیازها:

  • دانش ++C در سطح متوسط ​​(وراثت، STL و غیره)
  • دسترسی به کامپایلری که از ++C14 یا بالاتر پشتیبانی کند
  • درک مفاهیم چند نخی

در این دوره با ویژگی‌های جدید زبان آشنا می‌شوید، اینکه چگونه برنامه نویسی در ++C را آسان‌تر و سازنده‌تر می‌کنند و چگونه از آنها به صورت اصولی استفاده کنید.

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

++C مدرن زمان توسعه شما را کاهش می‌دهد و نگهداری کد شما را آسان‌تر می‌کند و احتمالاً صحیح و کارآمد خواهد بود. از بسیاری از موقعیت‌هایی که باعث رفتار نامشخص برنامه می‌شوند جلوگیری می‌کند و در نتیجه زمان کمتری برای اشکال‌زدایی و گزارش‌های نقص کمتری صرف می‌شود.

این دوره با بررسی ++C از استانداردهای 1998/2003، از جمله استثناها، قالب‌ها و کتابخانه قالب استاندارد آغاز می‌شود. اگر مدتی است از ++C استفاده نکرده‌اید، این به شما امکان می‌دهد دانش موجود خود را اصلاح و تازه کنید.

سپس تغییرات سال های 2011 و 2014 را پوشش می‌دهیم، که با زبان اصلی و کتابخانه استاندارد شروع می‌شود. ویژگی‌های مهم جدید مانند عبارات لامبدا، معناشناسی حرکت و چند نخی بخش‌های خاص خود را دارند. در نهایت، توصیه‌هایی در مورد نحوه استفاده از عملکرد خوب در هنگام نوشتن کد ++C مدرن وجود دارد.

هر سخنرانی شامل نمایشی از ویژگی‌های مورد بحث است و منابع قابل دانلودی دارد: کد منبع استفاده شده در ویدیو، تمرینات و راه حل‌هایی برای تمرینات. اینها نسبتاً ساده هستند و درک شما از موضوعی را که به تازگی آموخته‌اید آزمایش می‌کنند.

همچنین تکالیف گاه به گاه وجود دارد. اینها چالش‌برانگیزتر از تمرینات سخنرانی هستند.

پس از اتمام موفقیت آمیز این دوره، دانش خوبی از ویژگی‌های جدید در ++C مدرن و نحوه استفاده از آنها خواهید داشت.


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

مقدمه Introduction

  • معرفی دوره Course Introduction

  • معرفی مدرس Lecturer Introduction

  • راهنمای تمرین‌ها و سورس کد Guide to Exercises and Source Code

مروری بر ++C Review of C++

  • تاریخچه ++C History of C++

  • متغیرهای محلی و آرگومان‌های تابع Local Variables and Function Arguments

  • کلاس‌ها و توابع عضو ویژه Classes and Special Member Functions

  • آرایه، رشته و بردار Array, String and Vector

  • تکرار کنندگان Iterators

  • کلاس‌ها و رشته‌ها Classes and Strings

  • تکرارکننده‌ها (Iterators) Iterators

  • الگوریتم ها Algorithms

  • ظروف متوالی Sequential Containers

  • الگوریتم‌ها Algorithms

  • کانتینرهای انجمنی Associative Containers

  • ظروف ترتیبی (Sequential Containers) Sequential Containers

  • کانتینرهای انجمنی عملی Associative Containers Practical

  • ظروف انجمنی (Associative Containers) Associative Containers

  • آداپتورهای کانتینر Container Adapters

  • کاربرد عملی ظروف انجمنی Associative Containers Practical

  • جفت‌ها (Pairs) Pairs

  • اضافه بار اپراتور Operator Overloading

  • الگوریتم هایی با پیش بینی ها Algorithms with Predicates

  • مبدل‌های ظرف (Container Adapters) Container Adapters

  • کلاسها و ارث Classes and Inheritance

  • سربارگذاری عملگر (Operator Overloading) Operator Overloading

  • الگوریتم‌ها با Predicates Algorithms with Predicates

  • توابع مجازی و چند شکلی Virtual Functions and Polymorphism

  • ظروف ترتیبی قسمت 1 Sequential Containers Part 1

  • استثناها Exceptions

  • پرتاب () Exception Specifier The throw() Exception Specifier

  • کلاس‌ها و وراثت Classes and Inheritance

  • الگوها Templates

  • توابع مجازی و چندریختی (Polymorphism) Virtual Functions and Polymorphism

  • فضاهای نامی Namespaces

  • سربارگذاری در مقابل override Overload vs override

  • توابع عضو سنتز شده Synthesized Member Functions

  • وراثت Inheritance

  • مدیریت منابع Resource Managment

  • استثناها (Exceptions) Exceptions

  • مشخص‌کننده استثنا throw()‎ The throw() Exception Specifier

  • ریخته گری Casting

  • قالب‌ها (Templates) Templates

  • اطلاعات نوع زمان اجرا Run-time Type Information

  • Elision را کپی کنید Copy Elision

  • فضای نام‌ها (Namespaces) Namespaces

  • توابع عضو سنتز شده Synthesized Member Functions

  • ویژگی های مختلف C ++ 98 Miscellaneous C++98 features

  • بررسی کارگاه C ++ Review of C++ Workshop

  • مدیریت منابع Resource Managment

  • تبدیل نوع (Casting) Casting

  • اطلاعات نوع زمان اجرا (Run-time Type Information) Run-time Type Information

  • حذف کپی (Copy Elision) Copy Elision

  • ویژگی‌های متفرقه ++C98 Miscellaneous C++98 features

  • کلاس مدیریت بافر Buffer Manager Class

ویژگی‌های زبان ++C مدرن Modern C++ Language Features

  • انواع و لیترا‌ل‌ها (Literals) Types and Literals

  • لیترال‌های تعریف شده توسط کاربر User-defined Literals

  • اعلام و مقداردهی اولیه Declaration and Initialization

  • مقداردهی اولیه یونیورسال (Universal Initialization) Universal Initialization

  • Enums Enums

  • Enumها Enums

  • کسر نوع خودکار Automatic Type Deduction

  • استنتاج نوع خودکار Automatic Type Deduction

  • حلقه ها Loops

  • سازندگان Constructors

  • استنتاج نوع خودکار Automatic Type Deduction

  • حلقه‌ها Loops

  • حذف و کلمات کلیدی پیش فرض Delete and Default Keywords

  • اپراتورهای تبدیل Conversion Operators

  • حلقه‌های auto و for auto and for loops

  • ظروف ترتیبی قسمت 2 Sequential Containers Part 2

  • وراثت Inheritance

  • کلمه کلیدی noexcept The noexcept keyword

  • سازنده‌ها (Constructors) Constructors

  • کلمات کلیدی Delete و Default Delete and Default Keywords

  • فضاهای نامی Inline Inline Namespaces

  • عملگرهای تبدیل Conversion Operators

  • کارگاه آموزشی ویژگی های زبان مدرن ++ C Modern C++ Language Features Workshop

  • وراثت Inheritance

  • کلمه کلیدی noexcept The noexcept keyword

  • فضای نام‌های Inline Inline Namespaces

عبارات Lambda Lambda Expressions

  • معرفی عبارات Lambda Lambda Expressions Introduction

  • کاربرد عملی عبارات Lambda Lambda Expressions Practical

  • مرتب‌سازی یک بردار Sorting a Vector

  • عبارات و ضبط لامبدا Lambda Expressions and Capture

  • عبارات و ضبط لامبدا ادامه دارد Lambda Expressions and Capture Continued

  • عبارات Lambda و Capture Lambda Expressions and Capture

  • عبارات لامبدا و ارزیابی جزئی Lambda Expressions and Partial Evaluation

  • ادامه عبارات Lambda و Capture Lambda Expressions and Capture Continued

  • عبارات لامبدا در C ++ 14 Lambda Expressions in C++14

  • Lambdaهای Mutable Mutable Lambdas

  • کارگاه بیان لامبدا Lambda Expressions Workshop

  • عبارات Lambda و ارزیابی جزئی Lambda Expressions and Partial Evaluation

  • عبارات Lambda در ++C14 Lambda Expressions in C++14

  • Capture تعمیم یافته با مقداردهی اولیه Generalized Capture with Initialization

ویژگی‌های کتابخانه ++C مدرن Modern C++ Library Features

  • لیست‌های مقداردهی اولیه (Initializer Lists) Initializer Lists

  • ظروف و insert()‎ Containers and insert()

  • ظروف و emplace()‎ Containers and emplace()

  • تاپل‌ها (Tuples) Tuples

  • std::array std::array

  • ظروف متفرقه Miscellaneous Containers

  • اتصال آرگومان‌ها (Binding Arguments) Binding Arguments

  • اشیاء Callable Callable Objects

  • اعداد تصادفی Random Numbers

  • زمان Time

  • انواع ریاضی Mathematical Types

  • Bitsetها Bitsets

  • ویژگی‌های متفرقه کتابخانه Miscellaneous Library Features

  • الگوریتم‌های اعداد تصادفی Random Number Algorithms

  • کارگاه کتابخانه ++C مدرن Modern C++ Library Workshop

معناشناسی انتقال (Move Semantics) Move Semantics

  • Swap Swap

  • معناشناسی انتقال Move Semantics

  • Lvalueها و Rvalueها Lvalues and Rvalues

  • عملگرهای انتقال Move Operators

  • توابع عضو ویژه در ++C مدرن Special Member Functions in Modern C++

  • انواع Move-only و RAII Move-only Types and RAII

  • Forwarding References Forwarding References

  • Perfect Forwarding Perfect Forwarding

  • کارگاه معناشناسی انتقال Move Semantics Workshop

چندریسمانی (Multithreading) Multithreading

  • مروری بر Thread Thread Overview

  • اشتراک داده توسط threadها Data sharing by threads

  • مروری بر Mutex Mutex Overview

  • Deadlock و LiveLock Deadlock and Livelock

  • مروری بر انواع Atomic Atomic Types Overview

  • متغیرهای شرطی (Condition Variables) Condition Variables

  • Promises و Futures Promises and Futures

  • مروری بر Threadهای Asynchronous Asynchronous Threads Overview

  • کارگاه چندریسمانی Multithreading Workshop

اشاره‌گرهای هوشمند (Smart Pointers) Smart Pointers

  • مقدمه‌ای بر اشاره‌گرهای هوشمند Introduction to Smart Pointers

  • اشاره‌گر Unique Unique Pointer

  • کاربردهای اشاره‌گر Unique Unique Pointer Applications

  • اصطلاح pImpl The pImpl Idiom

  • اشاره‌گر Shared Shared Pointer

  • اشاره‌گر Weak Weak Pointer

  • کارگاه اشاره‌گرهای هوشمند Smart Pointers Workshop

برنامه‌نویسی زمان کامپایل (Compile-time Programming) Compile-time Programming

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

  • ویژگی‌های متفرقه قالب Miscellaneous Template Features

  • عبارات ثابت (Constant Expressions) Constant Expressions

  • توابع ConstexPR Constexpr Functions

  • استنتاج نوع قالب Template Type Deduction

  • استنتاج نوع خودکار Automatic Type Deduction

سبک برنامه‌نویسی ++C مدرن Modern C++ Programming Style

  • سبک برنامه‌نویسی ++C مدرن قسمت اول Modern C++ Programming Style Part One

  • سبک برنامه‌نویسی ++C مدرن قسمت دوم Modern C++ Programming Style Part Two

منابع Resources

  • کتاب‌های پیشنهادی Recommended Books

  • فریم‌ورک‌ها و کتابخانه‌های Awesome C++ در Github Awesome C++ Frameworks and Libraries Github

  • منابع Awesome Modern C++ در Github The "Awesome Modern C++ Resources" Github

  • منابع Awesome Modern C++ در Github The "Awesome Modern C++ Resources" Github

  • توسعه سریع بازی در ++C مدرن Quick Game Development in Modern C++

  • مطالب جایزه Bonus Material

نمایش نظرات

آموزش به سوی سی پلاس پلاس مدرن حرکت کنید
جزییات دوره
11.5 hours
99
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
16,789
4.6 از 5
دارد
دارد
دارد
James Raynard
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

James Raynard James Raynard

توسعهدهنده نرم افزار و مربی، متخصص در C ++ من از سال 1994 توسعه دهنده نرم افزار بوده ام، عمدتا در Telecomms و امور مالی، هر دو در انگلستان و هم در خارج از کشور. من اکنون به عنوان یک مربی کار می کنم و کلاس های توسعه نرم افزاری را در طیف وسیعی از محیط ها آموزش داده ام. من تا کنون سه دوره در مورد Udemy منتشر کرده ام. "یادگیری مدرن C ++!" و "یادگیری پیشرفته مدرن C ++" به طور جامع پوشش C ++ 11 و 14 و برخی از C ++ 17. "یادگیری مدرن C ++ Multithreading" به اصول برنامه نویسی Multithreaded با استفاده از C ++ 11، 14 و 17 آموزش می دهد.