Sorbet، یک سیستم بررسی نوع استاتیک برای روبی، منبع باز است.

شرکت Stripe متخصص در توسعه پلتفرم‌های پرداخت آنلاین است. باز شد کد منبع پروژه سوربیتکه شامل یک سیستم بررسی نوع استاتیک برای زبان روبی است. کد به زبان ++C نوشته شده است و توزیع شده توسط دارای مجوز Apache 2.0.

اطلاعات نوع در کد را می‌توان به صورت پویا محاسبه کرد، و همچنین به شکل ساده مشخص کرد حاشیه‌نویسی‌هاکه می‌تواند با استفاده از متد sig در کد مشخص شود (برای مثال، "sig {params(x: Integer).returns(String)}") یا در فایل‌های جداگانه با پسوند rbi قرار گیرد. ممکن به عنوان مقدماتی تجزیه و تحلیل کد استاتیک بدون پیاده‌سازی آن، و بررسی آن هنگام پیاده‌سازی (روشن می‌شود با اضافه کردن "require 'sorbet-runtime'" به کد.

احتمال وجود دارد. ترجمه تدریجی پروژه‌هایی که از Sorbet—code استفاده می‌کنند می‌توانند بلوک‌های حاشیه‌نویسی‌شده و تایپ‌شده و بخش‌های تایپ‌نشده که تحت پوشش بررسی نیستند را با هم ترکیب کنند. از ویژگی‌های آن می‌توان به عملکرد بسیار بالا و قابلیت مقیاس‌پذیری به پایگاه‌های کد حاوی میلیون‌ها خط کد اشاره کرد.

این پروژه شامل یک هسته برای بررسی نوع استاتیک است،
ابزارهایی برای ایجاد پروژه‌های جدید با استفاده از Sorbet، ابزارهایی برای انتقال تدریجی پروژه‌های موجود به Sorbet، یک محیط اجرا با یک زبان خاص دامنه برای نوشتن حاشیه‌نویسی در مورد انواع و مخزن با تعاریف نوع آماده برای بسته‌های مختلف Ruby gem.

سوربت در ابتدا برای آزمایش پروژه‌های داخلی در استرایپ توسعه داده شد، که سیستم‌های پرداخت و تحلیلی آن عمدتاً با روبی نوشته شده‌اند. پس از یک سال و نیم توسعه و پیاده‌سازی، به صورت متن‌باز منتشر شد. قبل از متن‌باز شدن، آزمایش بتا با بیش از 30 شرکت‌کننده انجام شد. در مرحله فعلی توسعه، سوربت از اکثر پروژه‌های استاندارد روبی پشتیبانی می‌کند، اما ممکن است با برخی ناسازگاری‌ها مواجه شود.

منبع: opennet.ru

خرید هاست قابل اعتماد برای سایت های دارای حفاظت DDoS، سرورهای VPS VDS 🔥 خرید هاستینگ معتبر با محافظت در برابر حملات DDoS، سرورهای VPS و VDS | ProHoster