نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیویی برای نمایش وجود ندارد.
توضیحات دوره:
اگر یک کد بزرگ بزرگ قدیمی را حفظ کنید ، احتمال اینکه قسمت هایی از آن را درک نکنید بسیار خوب است. این دوره به شما نشان می دهد که چگونه می توانید با بهره گیری کامل از تکنیک های مدرن C ++ ، کد را به وضعیت قابل خواندن تر ، قابل فهم و قابل نگهداری به روز کنید. C ++ برای چندین دهه یک زبان برنامه نویسی محبوب بوده است ، به این معنی که کد واقعی قدیمی وجود دارد. خواندن و نگهداری بعضی از آنها بسیار سخت است. قابلیت هایی به زبان و کتابخانه استاندارد اضافه شده است که می تواند این کد را ساده کرده و احتمالاً آن را سریعتر کرده یا اشکالات متناوب ناخوشایند را از بین ببرد. در این دوره ، Beautiful C ++: Updating Legacy Code ، شما می آموزید که چگونه به یک کد کد بزرگ و ناآشنا نزدیک شوید و تغییراتی در مدرن سازی کد ایجاد کنید. ابتدا ، شما برخی از استراتژی ها را برای تصمیم گیری دقیق در مورد تغییر تغییر می آموزید. سپس ، شما با ویژگی های زبان و قابلیت های کتابخانه آشنا می شوید که ممکن است هنگام نوشتن کد شما وجود نداشته باشد و اکنون می تواند آن را بهتر کند. سرانجام ، خواهید فهمید که چگونه پیشرفت خود را ارزیابی کرده و سودهای خود را از طریق بقیه کد منتشر کنید. با پایان این دوره ، شما آماده خواهید بود که کد شما یا یک نسل دیگر دوام بیاورد و از آنچه ++ C مدرن ارائه می دهد ، کاملاً استفاده کنید.
سرفصل ها و درس ها
بررسی اجمالی دوره
Course Overview
-
بررسی اجمالی دوره
Course Overview
می خواهید به چه هدفی برسید؟
What Target Are You Trying to Reach?
-
مقدمه
Introduction
-
کد میراث
Legacy Code
-
ای کاش این کد مدرن بود
You Wish This Code Was Modern
-
آرزو می کنید این کد حفظ شود
You Wish This Code Was Maintainable
-
چرا کد کار را تغییر می دهید؟
Why Would You Change Working Code?
-
رویکرد دوره
Course Approach
-
آخرش را در نظر گرفتن
Begin with the End in Mind
-
خلاصه
Summary
تصویر بزرگ
The Big Picture
-
مقدمه
Introduction
-
چه کاری نباید اول انجام داد
What Not to Do First
-
چه قسمت هایی نیاز به توجه دارند؟
What Parts Need Attention?
-
ترک Breadcrumb
Leaving a Breadcrumb
-
مرتب و مرتب
Tidy as You Go
-
کمتر نگران تغییرات باشید
Being Less Worried About Changes
-
خطرات را بشناسید
Know the Risks
-
وقت ندارم این را پاک کنم!
I Don't Have Time to Clean This Up!
-
اجازه دهید ابزارها به شما کمک کنند
Let Tools Help You
-
تغییرات خاص برای ایجاد
Specific Changes to Make
-
آیا شما نیاز به یخ زدن دارید؟
Do You Need to Freeze?
-
آیا لازم است روش های خود را تغییر دهید؟
Do You Need to Change Your Ways?
-
خلاصه
Summary
کامپایلر دوست شماست
The Compiler Is Your Friend
-
مقدمه
Introduction
-
تدوین کد واقعاً قدیمی
Compiling Really Old Code
-
نسخه ی نمایشی: هشدارهای رشته ای
Demo: String Warnings
-
دامنه حلقه
Loop Scope
-
کلمات کلیدی جدید
New Keywords
-
سطح هشدار را افزایش دهید
Turn up the Warning Level
-
نسخه ی نمایشی: سطح هشدار
Demo: Warning Level
-
شما ممکن است اشکالات را پیدا کنید
You Might Find Bugs
-
پیش پردازنده
The Preprocessor
-
آیا این ماکرو واقعاً عملکردی دارد؟
Is This Macro Really a Function?
-
نام برای اعداد
Names for Numbers
-
نسخه ی نمایشی: ماکروها
Demo: Macros
-
بسته بندی کد در خانه داری
Wrap Code in Housekeeping
-
نسخه ی نمایشی: زمان بندی با Lambdas
Demo: Timing with Lambdas
-
خلاصه
Summary
از C ++ به عنوان C ++ استفاده کنید
Use C++ as C++
-
مقدمه
Introduction
-
چه چیزی باعث C ++ C ++ می شود؟
What Makes C++ C++?
-
در حالی که شما به آن عملکرد نگاه می کنید
While You're Looking at That Function
-
کلاسهای لکه بینی
Spotting Classes
-
نسخه ی نمایشی: ایجاد کلاس ها
Demo: Creating Classes
-
کد پاکسازی و خانه داری
Cleanup and Housekeeping Code
-
نسخه ی نمایشی: RAII
Demo: RAII
-
آن را غیرقابل کپی کنید
Make It Noncopyable
-
مزایای RAII
RAII Benefits
-
توابع یا چک های مشابه
Similar Functions or Checks
-
درست بودن
Const Correctness
-
Typedef Structs را انجام ندهید
Don't Typedef Structs
-
بازیگران مناسب
Proper Casts
-
خلاصه
Summary
تغییرات زبان در C ++ 11 ، 14 و 17
Language Changes in C++ 11, 14, and 17
-
مقدمه
Introduction
-
استانداردها
Standards
-
خودکار
Auto
-
نسخه ی نمایشی: خودکار
Demo: Auto
-
خالی
Null
-
نسخه ی نمایشی: پوچ
Demo: Null
-
لامبدا
Lambdas
-
نسخه ی نمایشی: لامبدا
Demo: Lambda
-
برای حلقه ها
For Loops
-
نسخه ی نمایشی: برای حلقه ها
Demo: For Loops
-
Enum
Enum
-
سازندگان
Constructors
-
خلاصه
Summary
کتابخانه استاندارد در وقت و دردسر شما صرفه جویی خواهد کرد
The Standard Library Will Save You Time and Trouble
-
مقدمه
Introduction
-
رشته
String
-
نسخه ی نمایشی: رشته ای
Demo: String
-
آرایه ها
Arrays
-
بردار
Vector
-
نسخه ی نمایشی: بردار
Demo: Vector
-
برنامه عملیاتی
Action Plan
-
اشاره گرهای RAII
RAII Pointers
-
اشاره گرهای استاندارد استاندارد
Standard Smart Pointers
-
نسخه ی نمایشی: اشاره گرهای هوشمند
Demo: Smart Pointers
-
انواع اشاره گرها
Kinds of Pointers
-
آیا به اشاره گر نیاز دارید؟
Do You Need a Pointer?
-
الگوریتم ها
Algorithms
-
نوشتن خروجی
Write Output
-
خلاصه
Summary
سازماندهی مجدد برای شفافیت
Reorganizing for Transparency
-
مقدمه
Introduction
-
چیزهای جدا از هم جدا
Ripping Things Apart
-
کد پیکان
Arrow Code
-
دیوار اعلامیه ها
Wall of Declarations
-
هنگامی که اعلام می کنید از کجا استفاده می کنید
When You Declare Where You Use
-
بازتابنده به عملکردهای کوچکتر
Refactor into Smaller Functions
-
پارامترهای عملکرد
Function Parameters
-
اضافه کردن ساختار بیشتر
Add More Const
-
مرتب
Tidy Up
-
کد خطا
Error Codes
-
خلاصه
Summary
چه زمانی انجام می شود؟
When Are You Done?
-
مقدمه
Introduction
-
تغییرات خود را ارزیابی کنید
Evaluate Your Changes
-
کد میراث
Legacy Code
-
آیا شما یک اشکال پیدا کردید؟
Did You Find a Bug?
-
پس ، بعدی چیست؟
So, What's Next?
-
به لفافه و نما فکر کنید
Think About Wrappers and Facades
-
مکانهای دیگر برای بسته بندی
Other Places for Wrappers
-
چه موقع همه آن را بازسازی می کنید؟
When Do You Rebuild It All?
-
خلاصه
Summary
نمایش نظرات