Buck2 یک سیستم ساخت در مقیاس بزرگ است که به زبان Rust نوشته شده و برای سرعت طراحی شده است. این شرکت میگوید ساختها دو برابر سریعتر از Buck1 تکمیل میشوند.
شرکت مادر فیسبوک متا سیستم ساخت Buck2 خود را تحت مجوز منبع باز MIT منتشر کرده است. به گفته این شرکت، Buck2 که در Rust نوشته شده و برای ایجاد تجربه ساخت سریعتر و کارآمدتر طراحی شده است، توسط هزاران توسعهدهنده در Meta استفاده میشود و میلیونها ساخت در روز انجام میشود.
در تاریخ ۶ آوریل بهعنوان جانشین سریعتر سیستم ساخت Buck1، Buck2 منبع باز است و میتوان از GitHub به آن دسترسی داشت یا از وبسایت Buck2. این سیستم قادر به ساخت نرم افزار نوشته شده به هر زبانی است و می تواند همزمان نرم افزارهای نوشته شده به زبان های مختلف بسازد. به عنوان مثال، اگر توسعه دهندگان یک باینری پایتون داشته باشند که یک کتابخانه Rust را وارد می کند که به کتابخانه OCaml وابسته به یک فایل C بستگی دارد، Buck2 می تواند کمک کند.
برای هر زبان، یک قانون کلی باید نوشته شود که معنی کامپایل کردن در آن زبان خاص و نحوه ارائه ویژگیهای استاندارد، مانند آزمایش، اجرا، و پیوند با C را شرح دهد. Buck2 ارسال میشود. با قوانین اسمبلی، C/C++، Erlang، Go، Haskell، Java، JavaScript، Julia، OCaml، Python و Rust. برای افزودن یا پیادهسازی مجدد قوانین زبان به Buck2، توسعهدهندگان میتوانند از زبان برنامهنویسی Starlark، گویش پایتون استفاده کنند.
بازنویسی از ابتدا باک، Buck2 دارای تفکیک قواعد اصلی و زبان خاص، با افزایش موازیسازی، ادغام با اجرای از راه دور و سیستمهای فایل مجازی، و خروجی کنسول بازطراحی شده است. هسته Buck2 با Rust نوشته شده بود در حالی که قوانین زبان، مانند نحوه ساخت ++C، در پیاده سازی Rust از نوشته شده بود. ستاره ستاره. متا گفت که جدا کردن قواعد زبان از هسته، تغییر و درک قوانین را آسانتر میکند. یک نمودار وابستگی واحد سیستم ساخت را تقویت می کند، بسیاری از انواع اشکالات را حذف می کند و موازی سازی را بهبود می بخشد، در حالی که API قوانین برای ارائه ویژگی های پیشرفته برای عملکرد طراحی شده است.
نوشتن Buck2 در Rust مزایایی مانند عدم توقف جمع آوری زباله را ارائه می دهد، در حالی که جاوا، که متا در نوشتن Buck1 از آن استفاده کرد، مزایایی مانند ابزارهای پروفایل بهتر را ارائه می دهد. باینری Buck2 یک زبان آگنوستیک است.
پست های مرتبط
سیستمهای متنباز متا بهطور قابلتوجهی سریعتر میسازند
سیستمهای متنباز متا بهطور قابلتوجهی سریعتر میسازند
سیستمهای متنباز متا بهطور قابلتوجهی سریعتر میسازند