آموزش رایگان ++C ، Rust ,golang: post #130 — TG.ME

چرا rust به جای ++C ؟
یکی از مهم‌ترین مسئولیت‌های یک برنامه‌نویس C++، مدیریت صحیح حافظه است. در این زبان بر خلاف زبان‌هایی مثل Java یا #C، مکانیزم Garbage Collector وجود ندارد و توسعه‌دهنده باید به‌صورت دستی حافظه را آزاد کند. در پروژه‌های کوچک شاید این موضوع ساده به نظر برسد، اما وقتی کد بزرگ‌تر می‌شود و هزاران خط دارد، خطاهای رایجی مانند نشت حافظه (Memory Leak) رخ می‌دهد.
نشت حافظه زمانی رخ می دهد که ما با دستور new , حافظه رزرو کردیم اما فراموش کردیم که با دستور free آزاد کنیم.
در نتیجه بخش‌هایی از RAM در اختیار برنامه باقی می‌مانند، ولی دیگر قابل استفاده نیستند. این موضوع می‌تواند منجر به افزایش تدریجی مصرف حافظه، کاهش کارایی، و در شرایط حاد حتی کرش برنامه شود
پس زبان Rust طراحی شد تا این مشکلات را به‌صورت بنیادی حل کند. Rust با استفاده از سیستم مالکیت (Ownership System) و بررسی‌های زمان کامپایل، امکان نشت حافظه یا دسترسی غیرایمن به حافظه را عملاً از بین می‌برد. به همین دلیل، در پروژه‌هایی که ایمنی حافظه و پایداری بالا اهمیت دارد، Rust می‌تواند جایگزین بسیار بهتری نسبت به C++ باشد.
October 6, 2025 4.2K 32