کتاب برنامهنویسی همزمان و ناهمگام با C++، نوشته سانجای مدهاو و مارتین کالینز، راهنمایی جامع و عملی برای توسعهدهندگان C++ است که میخواهند با استفاده از ویژگیهای مدرن C++20 و C++23، نرمافزارهای با کارایی بالا، مقیاسپذیر و امن بسازند. این کتاب با پروژههای عملی و مثالهای واقعی، شما را از مفاهیم پایه مانند همزمانی و مدیریت حافظه تا تکنیکهای پیشرفته مانند Coroutineها و Futures هدایت میکند. خرید نسخه چاپی یا کیندل شامل یک نسخه رایگان eBook در فرمت PDF است.
با پیشرفت سختافزارها و افزایش ظرفیت حافظه و هستههای CPU، نرمافزارها باید برای بهرهبرداری حداکثری از منابع تکامل یابند. این کتاب با آموزش تکنیکهای مدیریت حافظه و همزمانی در C++، شما را قادر میسازد تا اپلیکیشنهایی بسازید که از منابع سیستم بهطور بهینه استفاده کنند. از logging و دیباگ اسکریپتهای ناهمگام تا بهینهسازی عملکرد، این کتاب ابزارها و دانش لازم برای توسعه نرمافزارهای پیشرفته را ارائه میدهد. مثالهای عملی و مطالعات موردی، یادگیری را جذاب و کاربردی میکنند.
بخش اول: مبانی و مفاهیم پایه
پارادایمهای برنامهنویسی موازی: درک همزمانی، ناهمگامی و موازیسازی.
فرآیند، نخ و سرویسها: مدیریت فرآیندها و نخها در C++.
بخش دوم: مدیریت نخها
چگونه نخها را در C++ ایجاد و مدیریت کنیم: اصول پایه مدیریت نخها.
هماهنگی نخها با قفلها: جلوگیری از رقابت دادهای.
عملیات اتمی: عملیات ایمن بدون قفل.
بخش سوم: برنامهنویسی ناهمگام
وعدهها و آیندهها: مدیریت عملیات ناهمگام.
تابع Async: استفاده از توابع ناهمگام.
برنامهنویسی ناهمگام با Coroutineها: تکنیکهای پیشرفته C++20.
بخش چهارم: ابزارها و بهینهسازی
لاگینگ: پیادهسازی لاگینگ برای نرمافزارهای ناهمگام.
سنیتایز و تست نرمافزار ناهمگام: ابزارهای تست و عیبیابی.
بهبود عملکرد نرمافزار ناهمگام: تکنیکهای بهینهسازی.
منظر برنامهنویسی سیستمی: آینده و روندهای برنامهنویسی.
این کتاب با پروژههای عملی مانند ساخت اپلیکیشنهای توزیعشده و مقیاسپذیر، شما را در استفاده از ویژگیهای C++20 و C++23 برای مدیریت حافظه و همزمانی هدایت میکند. از پیادهسازی Coroutineها برای برنامهنویسی ناهمگام تا بهینهسازی عملکرد با عملیات اتمی، این کتاب سناریوهای دنیای واقعی را پوشش میدهد. آموزشهای مربوط به لاگینگ و دیباگ، شما را برای حل چالشهای واقعی در توسعه نرمافزار آماده میکنند.
این کتاب بر C++20، C++23 و ابزارهای مرتبط مانند Coroutineها، Futures و عملیات اتمی تمرکز دارد و با کامپایلرهای مدرن مانند GCC و Clang سازگار است. تکنیکهای ارائهشده برای توسعه نرمافزارهای با کارایی بالا، سیستمهای توزیعشده و اپلیکیشنهای چندنخی مناسباند و با استانداردهای صنعت همراستا هستند.
این کتاب برای توسعهدهندگان C++ با سطح متوسط که میخواهند با ویژگیهای مدرن C++20 و C++23 آشنا شوند، ایدهآل است. توسعهدهندگان با تجربه که به دنبال بهروزرسانی مهارتهای خود در همزمانی و مدیریت حافظه هستند، از این کتاب بهرهمند خواهند شد. دانش پایه در C++ برای درک بهتر محتوا مفید است.
سانجای مدهاو و مارتین کالینز، با تجربه گسترده در توسعه نرمافزار و آموزش، مفاهیم پیچیده را با زبانی ساده و رویکردی پروژهمحور ارائه کردهاند. آنها با دانش عمیق در C++، راهکارهایی عملی برای حرفهایهای این حوزه فراهم کردهاند.
نظرات کاربران