Category

Go Programming

Go language tutorials, patterns, and best practices

64 posts

بناء واجهات سطر أوامر معقدة باستخدام Cobra

في مشهد التطوير الحديث، تظل سطر الأوامر واجهة قوية للمطورين ومديري الأنظمة. بينما يعد كتابة النصوص البرمجية البسيطة أمراً سهلاً، فإن بناء أدوات واجهة سطر الأوامر (CLI) القوية والقابلة للصيانة والمجزأة يتطلب نهجاً هيكلياً. لمطوري Go، تعد حزمة c...

بناء مزامنة فورية مرنة: البث ثنائي الاتجاه والمعالجات في Go gRPC

في المشهد الحديث لأنظمة الموزعة، يعد زمن الاستجابة العدو الأول. سواء كنت تبني محرر مستندات تعاونياً، أو لوحة تداول حية، أو نظام قياس عن بعد لأجهزة إنترنت الأشياء، فإن أنماط الطلب والاستجابة القياسية غالباً ما تكون غير كافية. هنا يبرز قوة البث ثنائي الاتجاه في gRPC، مما يتيح...

إتقان تجميع اتصالات قاعدة البيانات في Go: أفضل الممارسات لـ sql.DB

عند بناء خدمات خلفية عالية الأداء في Go، غالباً ما يكون كفاءة تفاعلات قاعدة البيانات هي الفارق بين تطبيق سريع الاستجابة وآخر يعاني من ارتفاع في زمن الاستجابة. في صميم العمليات الفعالة لقواعد البيانات في Go يكمن مفهوم تجميع الاتصالات، والذي يُدار بشكل أساسي من خلال حزمة...

تقليل زمن الاستجابة: تحسين تخصيص الذاكرة وإيقافات جامع القمامة في Go للخدمات المصغرة

في عالم الخدمات المصغرة الحديثة عالي المخاطر، كل ميلي ثانية تعد. بينما تشتهر لغة البرمجة Go (Golang) بآليات التزامن وأوقات بدء التشغيل السريعة، يمكن أن يصبح جامع القمامة (GC) عنق زجاجة للتطبيقات التي تتطلب زمن استجابة حتمياً أقل من ميلي ثانية...

ترويض الوحش: تحسين تخصيص الذاكرة وتعليقات توقف GC في الخدمات المصغرة منخفضة زمن الاستجابة

أصبحت لغة Go هي اللغة المشتركة للبنية التحتية السحابية الحديثة. بساطتها ونموذج التزامن القوي ومكتبتها القياسية الغنية تجعلها خياراً مثالياً لبناء الخدمات المصغرة. ومع ذلك، تكمن تحديات حرجة تحت هذه البساطة...

Go الحديثة: إتقان الأنواع العامة باستخدام أنماط المُنشئ والمُصنع والاستراتيجية

مع إدخال الأنواع العامة في Go 1.18، تطورت اللغة من أداة هيكلية صارمة إلى منصة هندسية أكثر تعبيراً وآمنة من حيث الأنواع. للمطورين المتوسطين والمتقدمين، هذا ليس مجرد راحة؛ بل يتعلق بإزالة الشيفرة المكررة مع الحفاظ على قوة التحقق الثابت من الأنواع.

إتقان وحدات Go وإدارة مساحات العمل: دليل للمطورين المعاصرين

شهدت لغة Go تطوراً كبيراً منذ إنشائها، لكن إدخال الوحدات (في الإصدار 1.11) ومساحات العمل (في الإصدار 1.18) شكّل نقطتي تحول حاسمتين في طريقة تنظيمنا وبناء وصيانة تطبيقات Go. بالنسبة للمطورين من المستوى المتوسط والمتقدم، يعد تجاوز المشاريع أحادية الوحدة البسيطة أمراً أساسياً لبناء أنظمة قابلة للتوسع والصيانة. يستعرض هذا المقال الفروق الدقيقة في إدارة ملفات go.mod وميزة مساحات العمل الجديدة والقوية التي تُبسّط تطوير الوحدات المتعددة.