أصدرت لغة برمجة Google Go (Golang) أحدث إصدار لها ، Go 1.19 ، لتحسين دعمها للأدوية ، وتقديم نموذج ذاكرة محسّن ، وتقديم مجموعة متنوعة من الميزات الأخرى. يركز هذا التحديث على تحسين الأدوية التي تمت إضافتها مؤخرًا ، والتي تم تقديمها لأول مرة في Go 1.18 ، وتحسين أداء الكود العام بنسبة تصل إلى 20 بالمائة.
التحسينات في Go 1.19
مع إصدار Go 1.19 في 2 أغسطس ، يركز تطوير دعم الأدوية الجنيسة على معالجة المشكلات الدقيقة وحالات الزاوية التي أبلغ عنها المجتمع ، إلى جانب تحسينات الأداء. كان إدخال الأدوية الجنيسة إلى اللغة ميزة طال انتظارها تمت إضافتها إلى Go 1.18 ، والذي تم إصداره في مارس.
تم تحديث نموذج ذاكرة Go لتعريف سلوك حزمة المزامنة / الذرية بشكل صريح ، مما يوفر أساسيات الذاكرة الذرية منخفضة المستوى لتنفيذ خوارزميات المزامنة. تم تجديد التعريف الرسمي للعلاقة التي تحدث قبل ذلك لتتماشى مع نماذج الذاكرة المستخدمة في C و C ++ و Java و JavaScript و Rust و Swift. لا يؤثر هذا التحديث على البرامج الموجودة.
كجزء من ترقية نموذج الذاكرة ، تم إدخال أنواع جديدة في الحزمة sync / atomic ، بما في ذلك atomic.int64 و atomic.Pointer (T) ، مما يجعل استخدام القيم الذرية أكثر ملاءمة. Go 1.19 متاح الآن للتنزيل من go.dev لأنظمة التشغيل Windows و macOS و Linux.
ميزات إضافية في Go 1.19
إلى جانب التحسينات التي تم إدخالها على الأدوية العامة ونموذج الذاكرة الجديد ، قدم Go 1.19 ميزات أخرى:
- تمت إضافة حد ذاكرة ناعم إلى أداة تجميع البيانات المهملة ، مما يساعد على تحسين برامج Go التي تعمل في حاويات ذات تخصيصات ذاكرة مخصصة.
- تحسينات في الأداء والتنفيذ ، مثل التحجيم الديناميكي لحزم coroutine لتقليل نسخ المكدس ، والاستخدام التلقائي لواصفات الملفات الإضافية في معظم أنظمة Unix ، وجداول الانتقال لبيانات التبديل الكبيرة على x86-64 و ARM64 ، ودعم استدعاءات الوظائف المحقونة بواسطة مصحح الأخطاء ARM64.
- تصحيح صغير تم إجراؤه لكتابة المعلمات في تعريفات الطريقة دون التأثير على البرامج الموجودة.
- تدعم تعليقات المستندات الآن الروابط والقوائم وبناء جملة العناوين ، مما يجعل تكوين تعليقات المستند أكثر وضوحًا ، خاصة للحزم ذات واجهات برمجة التطبيقات الشاملة.
- لأغراض أمنية ، لم تعد الحزمة os / exec تسمح بالمسارات النسبية في عمليات بحث PATH.
- تم تقديم قيد بناء جديد ، وهو unix ، والذي يتم استيفائه عندما يعمل نظام التشغيل المستهدف على أي نظام يشبه Unix.
مع زيادة اعتماد الأنظمة الأساسية الخالية من no-code والمنصات low-code مثل AppMaster increases, it is essential for developers to stay up to date with the latest advancements in popular programming languages like Go. The integration of Go with AppMaster can speed up backend applications' development, offering enhanced scalability and cost-effectiveness. Go 1.19 brings substantial improvements to boost performance, security, and developer experience, strengthening its position as a vital tool for modern software development.