دانلود رایگان کتاب:
C++ Notes for Professionals
معرفی و دانلود کتاب:

C++ Notes for Professionals

C++ Notes for Professionals
نویسندگان

مجموعه‌ای از نویسندگان در Stack Overflow

سال انتشار

2019

تعداد صفحات

708

سطح کتاب

متوسط

زبان کتاب

انگلیسی

حجم فایل

5MB

باکس دانلود

مطالعه کنید

ویرایش محتوا

درباره کتاب C++ Notes for Professionals:

کتاب C++ Notes for Professionals یک منبع رایگان و جامع برای یادگیری زبان برنامه‌نویسی C++ است که محتوای آن توسط توسعه‌دهندگان حرفه‌ای از انجمن Stack Overflow گردآوری شده است. این کتاب طیف گسترده‌ای از موضوعات از اصول پایه‌ای مانند متغیرها و حلقه‌ها تا مفاهیم پیشرفته نظیر مدیریت حافظه، طراحی الگوها، متاپروگرمینگ و هم‌زمانی را پوشش می‌دهد. ساختار آموزشی آن به صورت یادداشت‌های مختصر و مثال‌محور طراحی شده تا یادگیری سریع و کاربردی را برای برنامه‌نویسان فراهم کند.

خلاصه کتاب C++ Notes for Professionals:

این کتاب با معرفی مباحث پایه‌ای زبان C++  آغاز می‌شود، جایی که خواننده با مفاهیمی مانند انواع داده‌ها، عملگرها، ورودی و خروجی، حلقه‌ها و توابع آشنا می‌شود. سپس مباحث پیشرفته‌تری مثل اشاره‌گرها، مدیریت حافظه و اصول شی‌ءگرایی (OOP) شامل کلاس‌ها، وراثت، پلی‌مورفیسم و سربارگذاری عملگرها به‌طور کامل توضیح داده می‌شوند. استفاده از مثال‌های واقعی در هر فصل به درک سریع و کاربردی کمک ویژه‌ای می‌کند. بخش‌های پایانی کتاب به موضوعات حرفه‌ای‌تری مانند قالب‌ها (Templates)، هم‌زمانی (Threading)، مدیریت منابع (RAII)، الگوهای طراحی (Design Patterns) و استانداردهای جدید C++11، C++14 و C++17 اختصاص دارد. همچنین مباحثی چون تست نرم‌افزار، اشکال‌زدایی، بهینه‌سازی و تکنیک‌های بازآرایی کد نیز گنجانده شده‌اند. در نتیجه، این کتاب یک مرجع کاربردی برای دانشجویان، علاقه‌مندان و حتی برنامه‌نویسانی است که به دنبال مرور و تقویت مهارت‌های خود در C++  هستند.  
ویرایش محتوا

فهرست مطالب کتاب C++ Notes for Professionals:

Getting started with C++

Literals

operator precedence

Floating Point Arithmetic

Bit Operators

Bit Manipulation

Bit fields

Arrays

Iterators

Basic input/output in c++

Loops

File I/O

C++ Streams

Stream manipulators

Flow Control

Metaprogramming

const keyword

mutable keyword

Friend keyword

Type Keywords

Basic Type Keywords

Variable Declaration Keywords

Keywords

Returning several values from a function

Polymorphism

References

Value and Reference Semantics

C++ function “call by value” vs. “call by reference”

Copying vs Assignment

Pointers

Pointers to members

The This Pointer

Smart Pointers

Classes/Structures

Function Overloading

Operator Overloading

Function Template Overloading

Virtual Member Functions

Inline functions

Special Member Functions

Non-Static Member Functions

Constant class member functions

C++ Containers

Namespaces

Header Files

Using declaration

std::string

std::array

std::vector

std::map

std::optional

std::function: To wrap any element that is callable

std::forward_list

std::pair

std::atomics

std::variant

std::iomanip

std::any

std::set and std::multiset

std::integer_sequence

Using std::unordered_map

Standard Library Algorithms

The ISO C++ Standard

Inline variables

Random number generation

Date and time using <chrono> header

Sorting

Enumeration

Iteration

Regular expressions

Implementation-defined behavior

Exceptions

Lambdas

Value Categories

Preprocessor

Data Structures in C++

Templates

Expression templates

Curiously Recurring Template Pattern (CRTP)

Threading

Thread synchronization structures

The Rule of Three, Five, And Zero

RAII: Resource Acquisition Is Initialization

RTTI: Run-Time Type Information

Mutexes

Recursive Mutex

Semaphore

Futures and Promises

Atomic Types

Type Erasure

Explicit type conversions

Unnamed types

Type Traits

Return Type Covariance

Layout of object types

Type Inference

Typedef and type aliases

type deduction

Trailing return type

Alignment

Perfect Forwarding

decltype

SFINAE (Substitution Failure Is Not An Error)

Undefined Behavior

Overload resolution

Move Semantics

Pimpl Idiom

auto

Copy Elision

Fold Expressions

Unions

Design pattern implementation in C++

Singleton Design Pattern

User-Defined Literals

Memory management

C++11 Memory Model

Scopes

static_assert

constexpr

One Definition Rule (ODR)

Unspecified behavior

Argument Dependent Name Lookup

Attributes

Recursion in C++

Arithmitic Metaprogramming

Callable Objects

Client server examples

Const Correctness

Parameter packs

Build Systems

Concurrency With OpenMP

Resource Management

Storage class specifiers

Linkage specifications

Digit separators

C incompatibilities

Side by Side Comparisons of classic C++ examples solved via C++ vs C++11 vs C++14 vs C++17

Compiling and Building

Common compile/linker errors (GCC)

More undefined behaviors in C++

Unit Testing in C++

C++ Debugging and Debug-prevention Tools & Techniques

Optimization in C++

Optimization

Profiling

Refactoring Techniques

موارد اخیر