تخطَّ إلى المحتوى

علامات البناء

علامات البناء في Go (تُسمى أيضاً قيود البناء) هي توجيهات تخبر مترجم Go بتضمين أو استبعاد ملفات أثناء التجميع. يستخدم Gin علامات البناء للسماح لك باستبدال التنفيذات الداخلية أو تعطيل الميزات الاختيارية في وقت التجميع، دون تغيير أي كود في التطبيق.

هذا مفيد في عدة سيناريوهات:

  • تحسين الأداء – استبدال حزمة encoding/json الافتراضية بمُرمّز طرف ثالث أسرع لتسريع تسلسل JSON في واجهتك البرمجية.
  • تقليل حجم الملف الثنائي – إزالة الميزات التي لا تستخدمها، مثل عرض MsgPack، لإنتاج ملف ثنائي مُترجم أصغر.
  • ضبط النشر – اختيار مُرمّزات مختلفة لبيئات مختلفة (مثلاً بناء إنتاج عالي الإنتاجية مقابل بناء تطوير قياسي).

تُمرر علامات البناء إلى سلسلة أدوات Go باستخدام علم -tags:

نافذة طرفيّة
go build -tags=<tag_name> .

يمكنك دمج علامات متعددة بفصلها بفواصل:

نافذة طرفيّة
go build -tags=nomsgpack,go_json .
العلامة التأثير
go_json تستبدل encoding/json بـ go-json
jsoniter تستبدل encoding/json بـ jsoniter
sonic avx تستبدل encoding/json بـ sonic (تتطلب تعليمات AVX للمعالج)
nomsgpack تعطّل دعم عرض MsgPack

تغطي الصفحات أدناه كل علامة بناء بالتفصيل: