Category

Go Programming

Go language tutorials, patterns, and best practices

68 posts

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

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

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

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

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

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

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

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

إتقان اختبار Go: فن وعلوم الاختبارات القائمة على الجداول

كتابة اختبارات وحدة فعالة هي واحدة من أهم المهارات لأي مطور Go. بينما تعتبر حزمة الاختبار في المكتبة القوية قوية وبسيطة، إلا أن كتابة اختبارات شاملة وقابلة للصيانة تتطلب استراتيجية متينة. من بين الأنماط المختلفة المتاحة في بيئة Go...

إتقان فك الارتباط: أنماط المراقب والاستراتيجية في خدمات Go المصغرة

في المشهد الحديث لأنظمة الموزعة، لا يُعد الحفاظ على ارتباط فضفاض بين الخدمات المصغرة مجرد ممارسة مثلى، بل هو ضرورة لتحقيق قابلية التوسع والصيانة. بينما تشتهر لغة Go (Golang) ببساطتها وأدائها، إلا أن نهجها الاصطلاحي في التصميم يختلف غالباً عن...

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

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