Netflix کد محاسبه تعاملی Polynote را باز می کند


Netflix محیط جدید محاسبات تعاملی Polynote را معرفی کرده است ، که برای همراهی با فرآیند تحقیق ، پردازش داده ها و تجسم طراحی شده است (به شما امکان می دهد کد را با محاسبات علمی و مواد برای انتشار ترکیب کنید). کد چند جمله ای در Scala نوشته شده و تحت مجوز Apache 2.0 توزیع می شود.

اسناد در Polynote مجموعه ای از سلول است كه می تواند دارای كد یا متن باشد. هر سلول به طور جداگانه ویرایش و اجرا می شود. تجدید سازمان ، حذف و اضافه کردن سلول مجاز است ، اما وضعیت داده ها برای هر سلول بستگی به محاسبات موجود در سلول های گذشته (اجرای از بالا به پایین) دارد. چنین رویکردی قابلیت تکرار محاسبات تعریف شده در سند را تضمین می کند (اجرای مکرر این سند در هر سیستم به همان نتیجه منجر می شود).
اطلاعات و پیکربندی وابستگی مستقیماً در سند ذخیره می شوند و نه در پرونده های جداگانه.

برخلاف پروژه های مشابه Jupyter و Zeppelin ، محیط جدید به شما امکان می دهد کدها را در چندین زبان برنامه نویسی در یک سند مخلوط کنید ، و دسترسی مشترکی به داده ها از کد به چند زبان ایجاد می کنید (یک نقشه داده مشترک تعریف شده است). به عنوان مثال ، در یک سند ، می توانید کد Scala را با استفاده از کتابخانه های یادگیری و تجسم دستگاه محبوب برای پایتون ترکیب کنید. در مرحله فعلی توسعه ، پشتیبانی از زبانهای Scala ، Python ، SQL و Vega اجرا می شود.

از دیگر ویژگی های Polynote ، ابزارهای پیشرفته برای ویرایش کد و متن ، نزدیک به قابلیت های محیط های توسعه یکپارچه و پردازشگرهای کلمه است. هنگام ویرایش کد ، از اتمام خودکار پشتیبانی می شود ، مکان هایی که خطاها در آن رخ می دهد را برجسته می کند ، و باعث می شود پارامترهای توابع و روش ها باز شود. برنامه ها شامل امکان تغییر در تعریف متغیرها / عملکردها از مکانهای تماس آنها (پرش به تعریف) است.

در رابطه با تهیه اسناد و گزارش ها ، روند ویرایش تست در حالت WYSIWYG انجام می شود ، به شما امکان می دهد بلافاصله نتیجه نهایی فرمت شده را مشاهده کنید. در عین حال ، برای تعریف فرمول ها ، می توان عبارات را با فرمت LaTeX وارد کرد.

محیط اجازه می دهد تا کنترل کامل بر روند اجرای – در منطقه وظیفه نشان داده شود که کد در حال حاضر اجرا شده است و محاسبات در چه مرحله است. از طریق جدول نماد ، می توانید تمام عملکردها و متغیرهای تعریف شده را مشاهده کنید ، همچنین معنی آنها را بررسی کنید یا تغییرات را تجسم کنید. همه خطاها و استثنائات بلافاصله در ویرایشگر کد برجسته می شوند. ویرایشگر در زمان واقعی خط کد در حال اجرا را برجسته می کند.

داده پردازش شده به صورت بصری نمایش داده می شود ، بر اساس نوع یا در نمای جدول تفکیک می شود. ادغام با Apache Spark برای مشاهده ، تجزیه و تحلیل و تجسم مقادیر زیادی از داده ها پشتیبانی می شود. برای ساده سازی تصویری ، یک ویرایشگر نمودار و نمودار داخلی ساخته شده است. به عنوان گزینه ، می توان از Vega و Matplotlib برای تجسم استفاده کرد.