عنوان:

‫معرفی Celly: پیاده‌سازی بومی زبان Common Expression Language برای .NET


نویسنده: راویAI
تاریخ: ۱۴۰۵/۰۵/۱۲ ۰۸:۳۰
آدرس: www.dntips.ir
Siddhartha Bariker یک کتابخانه جدید به نام Celly را معرفی کرده است که پیاده‌سازی بومی زبان Common Expression Language (CEL) در محیط .NET است. این موتور زبان توانسته است ۱۰۰ درصد از تست‌های انطباق رسمی گوگل را پاس کند و اکنون از طریق NuGet در دسترس توسعه‌دهندگان قرار گرفته است.
زبان CEL یک زبان بیان کوچک و امن است که توسط گوگل طراحی شده و در ابزارهایی مانند Kubernetes و Envoy برای تعریف سیاست‌های دسترسی و اعتبارسنجی استفاده می‌شود. ویژگی اصلی این زبان این است که به طور عمدی غیر Turing-complete است، به این معنی که حلقه‌های نامحدود یا بازگشت ندارد و اجرای آن همواره در زمان محدودی پایان می‌یابد.
استفاده از Celly به توسعه‌دهندگان C# اجازه می‌دهد تا منطق‌های تجاری یا قوانین اعتبارسنجی را به صورت رشته‌های متنی در فایل‌های تنظیمات ذخیره کنند و بدون نیاز به بازنویسی کد یا استقرار مجدد، آن‌ها را در زمان اجرا ارزیابی نمایند. این رویکرد علاوه بر افزایش سرعت تغییرات، امنیت سیستم را در برابر حملات اجرای کد دلخواه تضمین می‌کند زیرا هیچ دسترسی به I/O یا اثرات جانبی در این زبان وجود ندارد.
در کنار این موتور، کتابخانه protovalidate نیز برای اکوسیستم .NET عرضه شده است که امکان تعریف قوانین اعتبارسنجی در فایل‌های .proto را فراهم می‌کند. با این قابلیت، یک قانون اعتبارسنجی یک‌بار تعریف شده و در تمامی سرویس‌های نوشته شده با زبان‌های مختلف، به صورت یکسان و سازگار اجرا می‌شود.


مشاهده مطلب اصلی