الوحدات (modules) وهيكل المشروع
جزء من دورة Go
كل برنامج كتبته في هذا المسار حتى الآن عاش في ملف واحد تستطيع تشغيله بأمر واحد. لكن مشاريع Go الحقيقية لا تبقى بهذا الصغر أبداً تقريباً: يتوزّع الكود على ملفات ومجلدات كثيرة وهو ينمو، ويُشارَك بعضه مع برامج أخرى، ويعتمد بعضه على كود كتبه ونشره آخرون. وما إن يدخل أكثر من ملف حتى تظهر فوراً ثلاثة أسئلة لم يكن على برنامج الملف الواحد أن يجيب عنها: كيف يشير جزء من كودك إلى جزء آخر جالس في مجلد مختلف، وكيف تعرف أدوات Go...
كنت تكتب package main في أعلى كل ملف في هذا المسار دون أن تتوقّف عند معنى تلك الكلمة. الحزمة (package) ببساطة مجلد ملفات .go تعلن كلّها اسم الحزمة نفسه في أعلاها وتُصرَّف معاً كوحدة واحدة، تماماً كما تخدم كل قطعة في غرفة واحدة من البيت غرض تلك الغرفة وحده، ولا يحتاج أحد خارج الغرفة أن يعرف كيف رُتّب الأثاث في داخلها. ومساحة العمل في هذا الدرس فيها أصلاً حزمة غير main: افتح internal/greeter/greeter. ...
هل تريد تعلّم Go الوحدات (modules) وهيكل المشروع في بيئة حقيقية؟
انقر بالأسفل لتحصل على جهاز لينكس مع Go جاهز، وتعمل على الوحدات (modules) وهيكل المشروع بشكل عملي مع مدرّس ذكي يعرف الكود الخاص بك.
ابدأ هذا الدرسالوحدات (modules) وهيكل المشروعما الذي ستتعلّمه
- Go mod init
- Go.mod and go.sum
- Import paths
- Package vs module
- Internal/ folder
- Cmd/ layout
- Go mod tidy
اقرأ هذا الدرس بلغتك
كل دروس هذه الدورة
20 دروس- 1مرحبا، Go25 دقيقة
- 2المتغيرات والأنواع25 دقيقة
- 3التحكم في التدفق: if و for30 دقيقة
- 4الدوال30 دقيقة
- 5الشرائح (slices) والخرائط (maps)35 دقيقة
- 6الهياكل (structs) والمؤشرات (pointers)35 دقيقة
- 7الأساليب (methods) والواجهات (interfaces)35 دقيقة
- 8معالجة الأخطاء35 دقيقة
- 9الوحدات (modules) وهيكل المشروع35 دقيقة
- 10مشروع CLI الصغير التتويجي40 دقيقة
- 11جولة في المكتبة القياسية40 دقيقة
- 12الاختبار والمعايير المرجعية (benchmarks)40 دقيقة
- 13الغوروتينات (goroutines) والقنوات (channels)40 دقيقة
- 14أنماط التزامن45 دقيقة
- 15الأنواع العامة (generics)35 دقيقة
- 16خوادم HTTP45 دقيقة
- 17قواعد البيانات مع database/sql45 دقيقة
- 18الأداء والتحليل التشخيصي40 دقيقة
- 19أنماط التصميم في لغة Go40 دقيقة
- 20النشر والإنتاج45 دقيقة
