Avatar ·

ماذا يعني رمز الشرطة السفلية قبل الاستيراد في Go؟

مرحبًا! بدأت تعلم Go وواجهت بناء غير مفهوم بالنسبة لي. في كود شخص آخر رأيت هذا الاستيراد: ```go import ( "fmt" _ "image/png" "os" ) ``` يربكني رمز الشرطة السفلية (`_`) قبل السلسلة `"image/png"`. أعلم أنه في Go، الاستيرادات غير المستخدمة تسبب خطأ في الترجمة، لكن هنا شيء مختلف بوضوح. حاولت إزالة هذا الاستيراد، وتوقف الكود عن العمل — لم يتمكن البرنامج من فك تشفير صور PNG. مع أنني لا أستدعي أي دوال من الحزمة `image/png` بشكل مباشر. كيف يعمل هذا؟ لماذا نحتاج إلى هذا الاستيراد إذا كنا لا نستخدم دوال الحزمة بشكل صريح؟ في التوثيق وجدت إشارة إلى دوال `init()`، لكنني لم أفهم تمامًا كيف يرتبط هذا. اشرح لي، من فضلك، لِمَ يُستخدم الشرطة السفلية قبل الاستيراد، وفي أي الحالات قد يكون هذا مفيدًا. هل هناك أي مطبات أو أفضل الممارسات؟ شكرًا! <<>>

ما هو "المعرف الفارغ" في الاستيراد؟

رمز الشرطة السفلية (