کار خود را با ساخت یک ماژول گو شروع کنید. در یک ماژول، شما یک یا چند پکیج مرتبط را برای مجموعهای مجزا و کاربردی از توابع جمعآوری میکنید. برای مثال، ممکن است ماژولی با پکیجهایی بسازید که دارای توابعی برای انجام تحلیلهای مالی هستند تا دیگرانی که برنامههای مالی مینویسند بتوانند از کار شما استفاده کنند.
کدهای گو در پکیجها دستهبندی میشوند و پکیجها در ماژولها گروهبندی میشوند. ماژول شما وابستگیهای مورد نیاز برای اجرای کدتان را مشخص میکند، از جمله نسخه گو و مجموعه ماژولهای دیگری که به آنها نیاز دارد.
همانطور که قابلیتهایی را به ماژول خود اضافه کرده یا بهبود میبخشید، نسخههای جدیدی از ماژول را منتشر میکنید. توسعهدهندگانی که کدهایی برای فراخوانی توابع موجود در ماژول شما مینویسند، میتوانند پکیجهای بهروزرسانیشده ماژول را Import کرده و قبل از قرار دادن آن در محیط عملیاتی (Production)، با نسخه جدید تست انجام دهند.
۱. یک خط فرمان (Command prompt) باز کرده و با دستور cd به دایرکتوری home (خانه) خود بروید.
-
در لینوکس یا مک:
cd -
در ویندوز:
cd %HOMEPATH%
۲. یک دایرکتوری به نام greetings برای سورسکد ماژول گو خود ایجاد کنید. برای مثال، از دایرکتوری home خود از دستورات زیر استفاده کنید:
mkdir greetings
cd greetings
۳. ماژول خود را با استفاده از دستور go mod init شروع (آغاز) کنید. دستور go mod init را اجرا کنید و مسیر ماژول (Module path) خود را به آن بدهید -- در اینجا از [example.com/greetings](https://example.com/greetings) استفاده کنید. اگر ماژولی را منتشر میکنید، این مسیر باید مکانی باشد که ابزارهای گو بتوانند ماژول شما را از آنجا دانلود کنند. آن مسیر همان مخزن (Repository) کد شما خواهد بود.
برای اطلاعات بیشتر درباره نامگذاری ماژول با مسیر ماژول، بخش مدیریت وابستگیها (Managing dependencies) را ببینید.
$ go mod init example.com/greetings
go: creating new go.mod: module example.com/greetings
دستور go mod init یک فایل go.mod ایجاد میکند تا وابستگیهای کد شما را رهگیری کند. تا اینجای کار، این فایل فقط شامل نام ماژول شما و نسخه گویی است که کد شما از آن پشتیبانی میکند. اما همانطور که وابستگیها را اضافه میکنید، فایل go.mod نسخههایی را که کد شما به آنها وابسته است لیست میکند. این کار باعث میشود ساخت برنامه (Builds) تکرارپذیر باشد و به شما کنترل مستقیمی بر روی نسخههای ماژول مورد استفاده میدهد.
۴. در ویرایشگر متن خود، فایلی ایجاد کنید تا کد خود را در آن بنویسید و نام آن را greetings.go بگذارید.
۵. کد زیر را در فایل greetings.go خود Paste کرده و فایل را ذخیره کنید.
package greetings
import "fmt"
// Hello returns a greeting for the named person.
func Hello(name string) string {
// Return a greeting that embeds the name in a message.
message := fmt.Sprintf("Hi, %v. Welcome!", name)
return message
}
این اولین کد برای ماژول شماست. این کد به هر فراخوانندهای (Caller) که درخواست خوشآمدگویی کند، یک پیام خوشآمد بازمیگرداند. شما در مرحله بعد کدی خواهید نوشت که این تابع را فراخوانی میکند.
در این کد، شما:
-
یک پکیج
greetingsرا برای جمعآوری توابع مرتبط تعریف میکنید. -
یک تابع
Helloرا برای بازگرداندن پیام خوشآمد پیادهسازی میکنید. این تابع یک پارامترnameدریافت میکند که نوع (Type) آنstringاست. این تابع همچنین یکstringرا بازمیگرداند. در گو، تابعی که نام آن با یک حرف بزرگ انگلیسی شروع میشود، میتواند توسط تابعی خارج از همان پکیج فراخوانی شود. این ویژگی در گو به عنوان نام تصدیرشده (Exported name) شناخته میشود. برای اطلاعات بیشتر درباره نامهای تصدیرشده، بخش Exported names در تور گو را ببینید. -
یک متغیر
messageبرای نگهداری پیام خوشآمدگویی خود تعریف میکنید. در گو، عملگر=:یک راه میانبر برای تعریف و مقداردهی اولیه یک متغیر در یک خط است (گو از مقدار سمت راست برای تعیین نوع متغیر استفاده میکند). اگر میخواستید مسیر طولانیتر را بروید، ممکن بود آن را به این صورت بنویسید:var message string message = fmt.Sprintf("Hi, %v. Welcome!", name) -
از تابع
Sprintfمربوط به پکیجfmtبرای ساخت یک پیام خوشآمدگویی استفاده میکنید. اولین ورودی (Argument) یک رشته فرمتدهی (Format string) است وSprintfمقدار پارامترnameرا بهجای کاراکتر فرمت%vجایگزین میکند. قرار گرفتن مقدار پارامترnameمتن خوشآمدگویی را کامل میکند. -
متن خوشآمدگویی فرمتشده را به فراخواننده (Caller) بازمیگردانید.
این محتوا کاملا رایگان توسط تیم کدلپر ترجمه شده و در اختیار شما کاربران عزیز قرار گرفته است، هر گونه کپی برداری برای مقاصد غیر رایگان و بدون ذکر منبع، مورد پیگیری قانونی قرار میگیرد.
ترجمه شده از منبع: منبع مستندات