سريع
التوجيه يعتمد على شجرة Radix، بذاكرة صغيرة الاستخدام. لا يستخدم الانعكاس (reflection). أداء واجهة البرمجة (API) قابل للتنبؤ به.
Gin هو إطار عمل ويب مكتوب بلغة Go (Golang). يتميز بواجهة برمجية تشبه واجهة Martini، لكنه يوفر أداءً أسرع بما يصل إلى 40 مرة مقارنة بـ Martini. إذا كنت تبحث عن الأداء العالي والإنتاجية، فستحب Gin بالتأكيد.
سريع
التوجيه يعتمد على شجرة Radix، بذاكرة صغيرة الاستخدام. لا يستخدم الانعكاس (reflection). أداء واجهة البرمجة (API) قابل للتنبؤ به.
Middleware support
يمكن معالجة طلب HTTP وارد بواسطة سلسلة من البرامج الوسيطة (middleware) ثم تنفيذ الإجراء النهائي. على سبيل المثال: تسجيل الدخول (Logger)، التفويض (Authorization)، ضغط البيانات (GZIP)، وأخيرًا حفظ رسالة في قاعدة البيانات.
خالٍ من الأخطاء
يمكن لـ Gin التقاط حالة الـ panic التي تحدث أثناء معالجة طلب HTTP واستعادتها. بهذه الطريقة، يظل الخادم الخاص بك متاحًا دائمًا. كما يمكن أيضًا إرسال تقرير عن هذا الـ panic إلى خدمات مثل Sentry على سبيل المثال!
التحقق من صحة JSON
يستطيع Gin تحليل والتحقق من صحة بيانات JSON في الطلب، مثل التحقق من وجود القيم المطلوبة.
تجميع المسارات
نظّم مساراتك بشكل أفضل. مثلًا، التمييز بين المسارات التي تتطلب التفويض والمسارات التي لا تتطلبه، أو التعامل مع إصدارات مختلفة من واجهة البرمجة (API). بالإضافة إلى ذلك، يمكن تجميع المجموعات بشكل متداخل بلا حدود دون التأثير على الأداء.
إدارة الأخطاء
يوفر Gin طريقة ملائمة لجمع جميع الأخطاء التي تحدث أثناء معالجة طلب HTTP. في النهاية، يمكن للبرامج الوسيطة (middleware) تسجيل هذه الأخطاء في ملف سجل، أو في قاعدة بيانات، أو إرسالها عبر الشبكة.
التصيير المدمج
يوفر Gin واجهة برمجة تطبيقات سهلة الاستخدام لتصيير بيانات JSON و XML و HTML.
قابل للتوسيع
إن إنشاء برنامج وسيط (middleware) جديد سهل جدًا، فقط اطلع على مثال الكود.