The Easy Way to Start Learning Modern C++
Frances Buontempo Foreword by Kevlin Henney

#CPP
#AI
#Game_development
#OOP
🚀 شما کدنویسی بلدید، اما حالا وقتشه که سطح خودتون رو بالا ببرید. حتماً درباره قدرت و کارایی C++ شنیدید؛ زبانی که توی حوزههایی مثل هوش مصنوعی، بازیسازی و پردازشهای سنگین حرف اول رو میزنه. اما سوال اینجاست که از کجا باید شروع کرد؟ منابع موجود یا خیلی قدیمی و آکادمیک هستن، یا فرض رو بر این میذارن که شما تسلط عمیقی روی زبان C دارید. شما به راهنمایی نیاز دارید که به مهارتهای فعلیتون احترام بذاره و مستقیم بره سر اصل مطلب تا بتونید سریع با C++ مدرن کد بزنید.
✨ این کتاب حاشیهها رو کنار میزنه و روی عناصر حیاتی C++ تمرکز میکنه. با پروژههای عملی که توی این کتاب اومده، مهارت و اعتمادبهنفس شما خیلی سریع ساخته میشه. نویسنده کتاب، فرانسیس بونتمپو که خودش از متخصصهای این زبانه، شما رو با آخرین ویژگیها و بهترین روشهای کدنویسی (Best Practices) آشنا میکنه تا برای کاوش در سطوح پیشرفتهتر آماده بشید.
🔹 نوشتن کدهای تمیز و بهینه به زبان C++
🔹 درک مفاهیم پایه و ساختار دستوری (Syntax)
🔹 بهکارگیری رویکردهای مختلف برنامهنویسی، از شیءگرایی (OOP) تا سبکهای تابعی (Functional)
🔹 خواندن و درک تعاریف و منابع پیچیده C++
۱. Hello, World!
۲. متغیرها و ورودی کیبورد
۳. استثناها و انتظارات
۴. استفاده از حلقهها، آرایهها و وکتورها
۵. استفاده از الگوریتمهای کتابخانه استاندارد
۶. لمبداها و کتابخانه Ranges
۷. اعداد تصادفی
۸. کار با فایلها
۹. رشتهها و قالببندی
۱۰. کلاسها: متغیرهای عضو و توابع عضو
۱۱. کلاسها: توابع عضو ویژه و معنای انتقال (Move Semantics)
۱۲. مدیریت حافظه با std::unique_ptr
۱۳. کلاسها: توابع مجازی و ارثبری
۱۴. استفاده از std::variant و std::visit
۱۵. تمپلیتها و std::unordered_map
🌟 دیدن کتاب تازهای که نه تنها از C++ برای آموزش برنامهنویسی از صفر استفاده میکنه، بلکه کار رو با C++23 مدرن شروع میکنه، واقعاً لذتبخشه! با توجه به اینکه تعداد برنامهنویسهای این زبان هر سال بدون هیچ وقفهای در حال رشده، انتشار این کتاب کاملاً بهموقع بود.
— هرب ساتر، رئیس کمیته استانداردسازی ISO C++
📖 این همون کتابیه که آرزو داشتم سالها پیش، وقتی بعد از مدتها کار با زبانهای دیگه سراغ C++ اومدم، زیر بالشم داشتم.
— دانیلا انگرت، مهندس نرمافزار ارشد در GMH Prüftechnik GmbH و عضو کمیته استانداردسازی C++
✅ بالاخره یک کتاب C++ از راه رسید که سختیهای بیمورد رو برای مراحل بعد نگه میداره و اجازه میده اول چیزهای واقعی بسازید. مدرن، کاربردی و چیزی که جاش واقعاً خالی بود.
— مت گادبولت، خالق Compiler Explorer
💡 من مدتی از فضای C++ دور بودم، اما متن بونتمپو واضحه و توضیحاتش عالیه. فصل مربوط به لمبداها مخصوصاً برای من که تازه باهاشون آشنا شده بودم خیلی مفید بود؛ تا قبل از خوندن این کتاب، دلیل این همه هیاهو درباره لمبداها رو درک نمیکردم.
— امیر ویلیامز، عضو انجمن ACM
👩💻 فرانسیس بونتمپو سردبیر مجله Overload (متعلق به انجمن ACCU) هست و از دهه ۹۰ میلادی به صورت حرفهای برنامهنویسی میکنه.
🔬 اون مدرک دکترا در زمینه دادهکاوی داره و درباره C++ و یادگیری ماشین مینویسه و سخنرانی میکنه.
🎓 فرانسیس به توسعهدهندهها مشاوره میده، تستنویسی (Unit Testing) رو ترویج میکنه و تخصص خاصی در سادهسازی مباحث پیچیده داره.
You know how to code, but you’re ready to level up. You’ve heard about the power and performance of C++, a language vital to fields like AI, game development, and high-performance computing. But where do you even start? Existing resources are outdated or overly academic, or they assume a deep understanding of C. You need a guide that respects your existing skills and gets you coding fast with modern C++.
This book cuts through the noise, focusing on the essential elements of C++ with hands-on projects that quickly build your skills and confidence. Author and C++ expert Frances Buontempo gets you up to speed quickly with the latest features and best practices of the language, preparing you for more advanced exploration.
• Write clean and efficient C++ code
• Understand core concepts and syntax
• Apply various programming approaches, from OOP to functional styles
• Read and understand complex C++ definitions and resources
Table of Contents
Chapter 1. Hello, World!
Chapter 2. Variables and Keyboard Input
Chapter 3. Exceptions and Expectations
Chapter 4. Using Loops, Arrays, and Vectors
Chapter 5. Using Standard Library Algorithms
Chapter 6. Lambdas and the Ranges Library
Chapter 7. Random Numbers
Chapter 8. Working with Files
Chapter 9. Strings and Formatting
Chapter 10. Classes: Member Variables and Member Functions
Chapter 11. Classes: Special Member Functions and Move Semantics
Chapter 12. Memory Management with std::unique_ptr
Chapter 13. Classes: Virtual Functions and Inheritance
Chapter 14. Using std::variant and std::visit
Chapter 15. Templates and std::unordered_map
It’s wonderful to see a fresh book that not only uses C++ to teach programming from scratch but that starts with modern C++23! With the number of C++ programmers worldwide growing every year with no sign of slowing down, this book is very timely.
—Herb Sutter, ISO C++ committee chair
This is the book I wish I’d had under my pillow when I started with C++ many years ago after coming from a long career using other programming languages.
—Daniela Engert, senior software engineer at GMH Prüftechnik
GmbH and member of the C++ standardization committee Finally, a C++ book that saves the sharp edges for later and lets you build real things first. Modern, practical, and long overdue.
—Matt Godbolt, Compiler Explorer
I’ve been out of the C++ sphere for some time, but Buontempo’s text is clear and the explanations are excellent. The chapter on Lambdas was particularly helpful for me as a total newbie--I didn’t understand all the fuss about Lambdas until I read it.
—Emyr Williams, ACM member
About the Author
Frances Buontempo is the editor of ACCU’s magazine, Overload, and has been a professional programmer since the 1990s. She holds a PhD in data mining and writes and speaks about C++ and machine learning. She mentors developers, promotes unit testing, and makes complex topics easy to understand.









