نسخه جدید Go 1.14 در اینجا موجود است و این اخبار آن است

Go

GO Team از اعلامیه انتشار Go 1.14 رونمایی کرد، نسخه جدیدی از زبان برنامه نویسی منبع باز که توسط Google تولید شده است. طبق وعده داده شده ، این نسخه از ماه فوریه فراتر نرفت و تیم Go متوقف نشد و از همه کسانی که لطف کرده و کمک کردند تشکر کرد برای طراحی این نسخه ، یا از طریق نظرات ارائه شده برای این منظور و همچنین برای کسانی که در آزمون بتا شرکت کرده اند یا با صدور کد ، گزارش اشکالات و ارسال نظرات.

تا به حال، تیم GO تلاش کرده است تا چالش راه اندازی شده توسط راب پایک را حفظ کند، یکی از سه خالق گلنگ ، که من می خواستم این زبان برنامه نویسی در مقیاس بزرگ را آسان و سریعتر کند. از آنجا که نحو Go بر روی عناصر آشنا زبان C با کلمات قرضی منفرد از زبان Python بنا شده است. زبان به اندازه کافی مختصر است ، اما کد خواندن و فهم آن آسان است.

کد Go در پرونده های اجرایی باینری جداگانه کامپایل می شود که بومی و بدون استفاده از ماشین مجازی اجرا می شوند (پروفایل ها ، ماژول های اشکال زدایی و سایر زیر سیستم های عیب یابی در زمان اجرا به عنوان اجزای زمان اجرا یکپارچه شده اند) ، عملکرد قابل مقایسه با C را امکان پذیر می کند.

این پروژه در ابتدا با برنامه نویسی چند رشته ای و کار کارآمد در سیستم های چند هسته ای توسعه یافته است ، حتی ارائه ابزارهای پیاده سازی شده در سطح اپراتور برای سازماندهی محاسبات موازی و تعامل بین روش های موازی.

این زبان همچنین از حفاظت داخلی در برابر مناطق سرریز بلوک حافظه اختصاص یافته و امکان استفاده از جمع کننده زباله را فراهم می کند.

ویژگی های اصلی جدید Go 1.14

یک تغییر عمده در این نسخه جدید مربوط به سیستم ماژول جدید در دستور go برای استفاده گسترده، به طور پیش فرض فعال است و به جای GOPATH برای مدیریت وابستگی توصیه می شود.

سیستم ماژول جدید دارای سازگاری نسخه داخلی است، ابزارهای تحویل بسته و یک سیستم مدیریت وابستگی بهبود یافته. با کمک ماژول ها ، توسعه دهندگان دیگر ملزم به کار در درخت GOPATH نیستند ، آنها می توانند وابستگی های مبتنی بر نسخه را به صراحت تعریف کرده و مجموعه های قابل تکرار ایجاد کنند.

علاوه بر این، نخ ها دیگر نباید به طور نامحدود آویزان شوند ، همانطور که در بالا با یک حلقه بدون فراخوانی یک تابع مشاهده می شود ، همانطور که Go Scheduler قبل از برداشتن آن از نخ برای باز کردن فضا و بررسی امکان مشخص بودن زمان اجرای معین روال جاری در حین تماس های تابع ، کار می کند. روال های جدید این از نظر تأخیر کمتر در Go 1.14 تأثیرگذار است.

تغییر دیگر s استپشتیبانی اضافه شده برای تعبیه رابط ها با مجموعه ای از روش های همپوشانی. روش های رابط داخلی اکنون می توانند به همان نام و امضاهای مشابه با روش های موجود در رابط های موجود باشند. روش های صریحاً اعلام شده مانند گذشته منحصر به فرد هستند.

علاوه بر این عملکرد عبارت "به تعویق انداختن" افزایش یافته است، که اکنون سرعت استفاده از آنها از تماس مستقیم به یک عملکرد تنبل به سختی متفاوت است ، به شما امکان می دهد از شروع تنبل یک تابع در کد حساس به عملکرد استفاده کنید.

اولویت ترجیحی ناهمزمان نیز ارائه شده است- حلقه هایی که شامل تماس عملکردی نیستند ، هم اکنون می توانند منجر به بن بست برای برنامه ریز یا تأخیر در شروع جمع آوری زباله شوند.

کارایی سیستم تخصیص صفحه حافظه بهبود یافته است، که اکنون اختلافات قفل در تنظیمات با مقادیر بزرگ GOMAXPROCS به طور قابل توجهی کمتر است.

در نتیجه ، با اختصاص موازی فشرده حافظه های بزرگ ، تاخیرها کاهش یافته و عملکرد افزایش می یابد.

بیشتر نه می توانید لیست کاملی از این ویژگی های جدید را پیدا کنید کلید در یادداشت های انتشار GO 1.14.

همچنین ، این نسخه جدید بر روی macOS 10.11 El Capitan کار خواهد کرد و همچنان از باینری 32 بیتی در این سیستم عامل پشتیبانی خواهد کرد. این ممکن است آخرین نسخه ای باشد که از باینری 32 بیتی در سیستم عامل های دیگر مانند watchOS ، iOS ، iPadOS و tvOS نیز پشتیبانی می کند.


محتوای مقاله به اصول ما پیوست اخلاق تحریریه. برای گزارش یک خطا کلیک کنید اینجا.

اولین کسی باشید که نظر

نظر خود را بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخشهای موردنیاز علامتگذاری شدهاند با *

*

*

  1. مسئول داده ها: میگل آنخل گاتون
  2. هدف از داده ها: کنترل هرزنامه ، مدیریت نظرات.
  3. مشروعیت: رضایت شما
  4. ارتباط داده ها: داده ها به اشخاص ثالث منتقل نمی شوند مگر با تعهد قانونی.
  5. ذخیره سازی داده ها: پایگاه داده به میزبانی شبکه های Occentus (EU)
  6. حقوق: در هر زمان می توانید اطلاعات خود را محدود ، بازیابی و حذف کنید.