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

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

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

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

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

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

Terminal window
go build -tags=<tag_name> .

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

Terminal window
go build -tags=nomsgpack,go_json .

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

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

في هذا القسم

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