منسق كود جو (بنمط gofmt)
مرشد
منسق كود جو (بنمط gofmt)
فلسفة Go واضحة: هناك طريقة صحيحة واحدة لتنسيق الكود، وهي gofmt. يستخدم كل مشروع Go نفس التنسيق — علامات الجدولة للمسافات البادئة، والأقواس المتعرجة في نفس السطر، وترتيب الاستيراد — وهذا الاتساق هو أحد أعظم نقاط القوة في اللغة. ولكن عندما تقوم بتحرير Go خارج بيئة التطوير المتكاملة الخاصة بك، أو مراجعة مقتطفات في متصفح، أو تنظيف الكود من التوثيق، لا يكون لديك دائمًا gofmt في متناول يدك.
تطبق هذه الأداة تنسيق gofmt على كود Go الخاص بك بالكامل من جانب العميل. ألصق الكود الخاص بك، واحصل عليه مُنسقًا. لا يتطلب تثبيتًا، ولا معالجة من الخادم، ولا تغادر البيانات متصفحك.
كيف تستعمل
ألصق كود مصدر Go الخاص بك في منطقة الإدخال أو جرب المثال المضمن. يطبق المنسق اصطلاحات gofmt تلقائيًا: مسافات الجدولة، وضع الأقواس المناسب، ترتيب الاستيراد، والتنسيق المتسق. انسخ النتيجة أو قم بتنزيلها كملف .go.
سمات
- تنسيق بأسلوب gofmt – يطبق قواعد تنسيق Go الأصلية: مسافات جدولة بعلامات الجدولة، أقواس متعرجة في نفس السطر، تنسيق متسق
- فرز الاستيراد – يجمع ويرتب الاستيراد أبجديًا تلقائيًا، ويفصل بين مكتبة النظام وحزم الطرف الثالث
- إزالة الفواصل المنقوطة – يزيل الفواصل المنقوطة غير الضرورية التي سيقوم محلل Go بإدراجها تلقائيًا
- تطبيع الأسطر الفارغة – يزيل الأسطر الفارغة المتكررة المتتالية للحصول على مخرجات أنظف
- التحقق من بناء الجملة – يكتشف الأخطاء الشائعة مثل الأقواس المتطابقة ويبلغ عنها مع أرقام الأسطر
- معالجة جانب العميل – يبقى الكود الخاص بك في متصفحك — لا يتم تحميل أي شيء أو تخزينه
- تنزيل الإخراج – تصدير الكود المنسق كملف .go بنقرة واحدة
متى تستخدم هذه الأداة
استخدمه عند مراجعة مقتطفات Go خارج بيئة التطوير المتكاملة الخاصة بك، أو تنظيف الكود من منشورات المدونات أو التوثيق، أو تنسيق Go المضمن في ملفات markdown أو ملفات التكوين، أو عندما تريد تنسيقًا سريعًا دون إعداد سلسلة أدوات Go محلية. يتعامل مع قواعد التنسيق الأكثر شيوعًا التي تغطي الغالبية العظمى من كود Go في العالم الحقيقي.
التعليمات
-
لماذا تفرض Go أسلوب تنسيق واحد؟
قرر مبتكرو Go أن مناقشات التنسيق تضيع وقت المطورين. من خلال فرض gofmt كمنسق قياسي، تقضي Go على حجج الأسلوب تمامًا — لا توجد مناقشة Prettier مقابل ESLint، ولا حرب علامات الجدولة مقابل المسافات. كل ملف Go في كل مشروع يبدو متماثلًا، مما يقلل الحمل المعرفي عند قراءة الكود غير المألوف ويسهل الأدوات الآلية. المقولة الشهيرة لـ Go تلخص الأمر: أسلوب gofmt ليس المفضل لدى أي شخص، ومع ذلك gofmt هو المفضل لدى الجميع.
-
لماذا تستخدم Go علامات الجدولة بدلاً من المسافات للمسافات البادئة؟
تستخدم Go علامات الجدولة لأنها تفصل بين دلالات المسافات البادئة والعرض. تعني علامة الجدولة مستوى واحدًا من المسافات البادئة، ويمكن لمحرر كل مطور عرضها بأي عرض يفضلونه — مسافتان، 4 مسافات، 8 مسافات. هذا يتجنب نقاش المسافات تمامًا لأن ملف المصدر هو نفسه للجميع، بينما يتكيف العرض المرئي مع تفضيلات كل مطور. إنه حل عملي لمشكلة مثيرة للجدل بشكل كبير.
-
ما الفرق بين gofmt و goimports؟
يتعامل gofmt مع تنسيق الكود فقط — المسافات البادئة، التنسيق، وضع الأقواس. يقوم goimports بكل ما يفعله gofmt، بالإضافة إلى أنه يضيف تلقائيًا عبارات الاستيراد المفقودة ويزيل تلك غير المستخدمة عن طريق تحليل الحزم التي يشير إليها الكود الخاص بك. يستخدم معظم مطوري Go goimports كبديل مباشر لـ gofmt لأنه مجموعة فائقة تمامًا. كلاهما ينتج تنسيقًا متطابقًا؛ goimports يضيف فقط إدارة الاستيراد في الأعلى.
-
كيف تتعامل Go مع اصطلاحات تجميع الاستيراد؟
يفصل اصطلاح الاستيراد في Go بين الاستيرادات في مجموعات مع أسطر فارغة بينها. التجميع القياسي هو: حزم المكتبة القياسية أولاً، ثم حزم الطرف الثالث. تضيف بعض المشاريع مجموعة ثالثة للحزم الداخلية. ضمن كل مجموعة، يتم ترتيب الاستيرادات أبجديًا. يقوم goimports بفرض ذلك تلقائيًا. هذا الاصطلاح يجعل من السهل رؤية تبعيات الملف الخارجية بسرعة مقابل ما يستخدمه من المكتبة القياسية.
-
هل يمكن تخصيص تنسيق gofmt أو تجاوزه؟
لا، وهذا حسب التصميم. لا يحتوي gofmt على خيارات تكوين، ولا علامات لتغيير الأسلوب، ولا طريقة لتجاوز قراراته. هذا متعمد — إذا كان التنسيق قابلاً للتخصيص، فسيقوم كل مشروع بتخصيصه بشكل مختلف، مما يقوض الغرض. خيار التنسيق الوحيد المتاح للمطورين هو مكان وضع الأسطر الفارغة للتجميع المنطقي. كل شيء آخر يتم تحديده بواسطة gofmt. هذا النهج بدون تكوين هو أحد قرارات التصميم التي تم الإشادة بها كثيرًا في Go.
تثبيت ملحقاتنا
أضف أدوات IO إلى متصفحك المفضل للوصول الفوري والبحث بشكل أسرع
恵 وصلت لوحة النتائج!
لوحة النتائج هي طريقة ممتعة لتتبع ألعابك، يتم تخزين جميع البيانات في متصفحك. المزيد من الميزات قريبا!
