مجتمع Go يختار أفضل المكتبات لعام 2024

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

مجتمع Go (Golang) يختار أفضل مكتبات العام: نتائج التصويت 2024



انتهى التصويت السنوي لمجتمع Go لأفضل المكتبات والأدوات في نظام Golang البيئي. هذا العام، شارك عدد قياسي من المطورين - أكثر من 3800 شخص - في الاستطلاع الذي نظمه المورد الشهير GoTime والمدونة الرسمية لـ Golang. قمنا بتجميع الفائزين الرئيسيين في الفئات الأساسية، حتى تتمكن من تحديث مجموعة أدواتك لمشاريع Go.



الفائزون في الفئات الرئيسية



  • أفضل إطار ويب: gin-gonic/gin - القائد الدائم، حصل على 34% من الأصوات. في المركز الثاني fiber (28%)، ويغلق الثلاثي echo (15%).
  • أفضل موجه HTTP: chi - موجه خفيف الوزن ومتوافق مع net/http، تفوق على gorilla/mux (الذي يُنقل إلى الأرشيف) و httprouter.
  • أفضل ORM / التعامل مع قواعد البيانات: gorm.io/gorm - يحافظ على موقعه، لكن sqlc (توليد كود type-safe من SQL) و ent من Facebook يقتربان أكثر.
  • أفضل إطار اختبار: stretchr/testify - المعيار الفعلي للتأكيدات والـ mocks. المركز الثاني لـ golang/mock، والثالث لـ go-sqlmock.
  • أفضل إطار CLI: spf13/cobra - أساس معظم أدوات Go الحديثة (من Kubernetes إلى Hugo). في المركز الثاني urfave/cli.


مفاجآت العام: أسماء جديدة في القمة



جذبت فئة "أفضل مكتبة للتعامل مع التكوين" اهتمامًا خاصًا. بشكل غير متوقع للكثيرين، فازت caarlos0/env - مكتبة بسيطة لتحليل متغيرات البيئة إلى هياكل. تفوقت على العملاقين viper و koanf.



في فئة "أفضل مكتبة لتسجيل السجلات"، فضل المجتمع rs/zerolog - لسرعتها وعدم تخصيص الذاكرة (zero allocation). احتلت slog (المكتبة القياسية) المركز الثالث فقط، مما يشير إلى أن المطورين يقدرون الأداء أكثر من التوحيد القياسي.



اتجاهات نظام Go البيئي 2024



يظهر تحليل نتائج التصويت عدة اتجاهات رئيسية:

  • الابتعاد عن الأطر "الثقيلة" لصالح الحلول المركبة: يقوم المطورون بشكل متزايد بتجميع التطبيقات من مكتبات صغيرة مستقلة (موجه + مدقق + ORM)، بدلاً من استخدام أطر عمل متجانسة.
  • نمو شعبية توليد الكود: أدوات مثل sqlc و oapi-codegen (التوليد من OpenAPI) تظهر نموًا مضاعفًا في الأصوات مقارنة بالعام الماضي.
  • النظام البيئي لـ WebAssembly: مكتبة tinygo-org/tinygo دخلت لأول مرة في المراكز الخمسة الأولى، مما يشير إلى الاهتمام المتزايد بتشغيل Go في المتصفح وعلى أجهزة الحافة (edge).


ماذا يعني هذا لمطور Go؟



إذا كنت تكتب بلغة Go، يجب الانتباه إلى

المكتبات الموصى بها