هک برای منطق تجاری و برنامههای «نسبتاً بدون حالت» ترجیح داده میشود، در حالی که پایتون همچنان «زبان انتخابی» برای علم داده، برنامههای کاربردی ML و اینستاگرام است.
Rust در حال حاضر برای نوشتن ابزارهای رابط خط فرمان (CLI) و “سرویس های back-end حساس به عملکرد” توصیه می شود.
“ردپای Rust به سرعت در حال افزایش در محصولات و خدمات ما است، و ما متعهد به Rust بلند مدت هستیم و از پذیرندگان اولیه استقبال می کنیم.” اریک گارسیا، مدیر مهندسی نرم افزار متا می گوید.
در این بیانیه آمده است: «متا متعهد است که از زبانهای برنامهنویسی مورد استفاده توسعهدهنده ما پشتیبانی طولانیمدت ارائه کند و این حرکت نشاندهنده تعهد و پشتیبانی طولانیمدت متا از اکوسیستم زبان Rust است».
ببینید: امنیت محاسبات ابری: کجاست، کجا میرود
متا میگوید بهدلیل خطراتی که برای کارایی، بهرهوری و زمان توسعهدهنده دارد، بهدقت موضوع پشتیبانی از زبان جدید را بررسی میکند. برای کاهش تعداد کتابخانههای اصلی، کاهش پیچیدگی هنگام ایجاد ویژگیهای امنیتی و حریم خصوصی، اجتناب از تکه تکه شدن زبان برای کاهش ریسک عملیاتی، و پشتیبانی از ابزار توسعهدهنده، این فهرست را محدود نگه میدارد.
ببینید: کدنویسی چیست و چه کاربردی دارد؟ راهنمای مبتدی
متا همچنین از Java، Erlang، Haskell و Go برای موارد استفاده خاص پشتیبانی می کند.
به گفته فیس بوک، پذیرش Rust پس از موفقیت آمیز بودن Mononoke، جذب مهندسان با پیشینه پایتون و جاوا اسکریپت، شتاب بیشتری گرفت.
اکنون، Rust یک زبان اصلی پشتیبانی شده در سمت سرور به همراه Hack، C++ و Python است.
متا مادر فیس بوک اکنون مهندسان خود را تشویق می کند که از زبان های برنامه نویسی C++ و Rust برای کدنویسی خدمات باطنی با کارایی بالا استفاده کنند.
Rust که ابتدا در موزیلا توسعه داده شد، به عنوان یک زبان رسمی تایید شده سمت سرور به Meta ملحق می شود. به گفته متا، افزودن Rust به عنوان یک زبان پشتیبانی شده یک “تصمیم بسیار دقیق و عمدی” برای کمک به مهندسان برای انتخاب بهترین زبان برای پروژه های خود بود.
مزیت Rust در فیسبوک این است که به راحتی با کد ++C خود برای برقراری ارتباط با سیستمهای بکاند که سرویسها روی آنها ساخته شدهاند، کار میکند.
Google به مشارکتکنندگان پروژه منبع باز Android اجازه میدهد تا کد جدید اندروید را در Rust بنویسند، اما تیم کروم ترجیح داده است در آینده قابل پیشبینی با C++ به جای Rust به عنوان زبان اصلی باقی بماند. مایکروسافت از سال 2019 با Rust برای ویندوز به عنوان جایگزینی برای C و C++ آزمایش کرده است، در حالی که تیم Azure آن را برای کدنویسی در فضای ابری پذیرفته است.
وضعیت آن به عنوان یک زبان پشتیبانی شده گام بعدی در پذیرش Rust توسط فیس بوک است. در آوریل 2021 به بنیاد Rust پیوست عضو پلاتین با AWS، Google، Huawei، Microsoft و Mozilla.
Rust به اندازه پایتون و جاوا به طور گسترده مورد استفاده قرار نمی گیرد، اما به طور مداوم رتبه بندی می شود “دوست داشتنی ترین” زبان برنامه نویسی در نظرسنجی های سالانه توسعه دهندگان Stack Overflow. حتی گروههای باجافزار بدافزار خود را در Rust بازنویسی میکنند.
منبع: https://www.zdnet.com/article/the-rust-programming-language-just-got-a-big-boost-from-meta/#ftag=RSSbaffb68
“ما به توسعه دهندگانی نیاز داریم که بتوانند بدون از دست دادن مزایایی که Rust ارائه می دهد، از این کتابخانه ها به راحتی و ایمن استفاده کنند. برعکس، اگر بخواهیم اجزای Rust را با باینری های بزرگتر C++ خود یکپارچه کنیم، به قابلیت همکاری زمان اجرا هوشمند در کدهای ناهمزمان نیاز داریم. سرورهای فیس بوک هستند. به شدت توزیع شده و دارای رشته های سنگین است. وظایف Rust باید به خوبی در یک Threadpool C++ اجرا شوند و با خیال راحت منابع اولیه همگام سازی و I/O را به اشتراک بگذارند.” مهندسان متا اخیرا توضیح دادند.
انتخاب Rust به جای C++ یک تصمیم بزرگ برای فیس بوک بود، زیرا بیشتر کدهای بک اند آن به زبان C++ نوشته شده بود و آن را به انتخاب بدیهی تبدیل می کرد.
فیس بوک از سال 2016، یک سال پس از ورود نسخه 1.0 این زبان، از Rust استفاده کرده است. Rust زبان اصلی است که برای بلاک چین استیبل کوین Diem (Libra سابق)، سرور کنترل منبع Mononoke آن و حرکت، “زبان برنامه نویسی جدید و ایمن متا که برای بلاک چین استفاده می شود.”
AWS Rust را در سازمان خود برای ساختن نرمافزار زیرساخت تقویت کرده و آن را برای کاهش تأثیر آن بر مصرف انرژی تشویق میکند در مقایسه با پایتون و حتی جاوا. خدمات AWS ساخته شده بر روی Rust عبارتند از Firecracker، فناوری پشت پلتفرم Lamba آن برای برنامه های کانتینری، سرویس ذخیره سازی ساده آمازون (S3)، Elastic Compute Cloud (EC2)، شبکه تحویل محتوای CloudFront آن، و Bottlerocket، یک سیستم عامل کانتینری مبتنی بر لینوکس.