ماژولها (modules) و ساختار پروژه
بخشی از دوره Go
هر برنامهای که تا اینجای دوره نوشتهاید یک فایل تنها بوده که با یک دستور اجرایش میکردید. پروژههای واقعی Go تقریباً هیچوقت اینقدر کوچک نمیمانند: کد با بزرگ شدن میان فایلها و پوشههای زیادی پخش میشود، بخشی از آن با برنامههای دیگر به اشتراک گذاشته میشود، و بخشی به کدی وابسته است که دیگران نوشته و منتشر کردهاند.
در این دوره بالای هر فایلی package main نوشتهاید بیآنکه روی معنای آن کلمه مکث کنید. پکیج (package) بهسادگی پوشهای از فایلهای .go است که همگی بالای خود یک نام پکیج را اعلام میکنند و بهعنوان یک واحد با هم کامپایل میشوند، همانطور که هر فایلی در یک اتاق از خانه به همان یک هدف آن اتاق خدمت میکند و بیرون اتاق لازم نیست کسی بداند مبلمان داخلش چطور چیده شده است.
میخواهی 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سلام، گو25 دقیقه
- 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 دقیقه
