زبان Go یا Golang یکی از سریعترین و مدرنترین زبانهای برنامهنویسی دنیاست که مخصوص ساخت اپلیکیشنهای سریع، قابل اعتماد و مقیاسپذیر طراحی شده. توی این بخش قراره به معرفی زبان Go بپردازیم، ببینیم چرا انقدر محبوب شده و چطور میتونیم محیط برنامهنویسیشو روی سیستممون راه بندازیم.
زبان Go توسط سه نفر از مهندسان معروف گوگل بهنامهای Robert Griesemer، Rob Pike و Ken Thompson طراحی شد و اولین بار در سال ۲۰۰۹ منتشر شد. هدف از ساخت این زبان، ترکیب سادگی زبانهایی مثل Python با قدرت و سرعت زبانهایی مثل C بود.
چند نکته جالب درباره Go:
- توسعه داده شده در گوگل
- بهشدت سریع در اجرا
- کدهای ساده و قابل فهم
- طراحی شده برای کارهای سنگین مثل سرورها، APIها، و ابزارهای سیستمعامل
Go مزایای زیادی داره که باعث شده توی دنیای برنامهنویسی، مخصوصاً بکاند و DevOps، کلی طرفدار پیدا کنه:
- سرعت بالا: Go بعد از کامپایل به کد ماشین تبدیل میشه، یعنی بدون نیاز به ماشین مجازی اجرا میشه و خیلی سریع کار میکنه.
- سینتکس ساده و تمیز: کدهای Go خیلی خوانا هستن و پیچیدگیهای اضافی مثل وراثت، ژنریکهای پیچیده یا علامتگذاریهای سنگین توش نیست.
- کامپایل سریع: یکی از مزایای بزرگ Go اینه که حتی پروژههای بزرگ رو توی چند ثانیه کامپایل میکنه.
- پشتیبانی قدرتمند از Concurrency: Go از اول برای برنامهنویسی همزمان (concurrent programming) طراحی شده و با چیزی بهنام Goroutine خیلی راحت میتونی چند کار رو همزمان اجرا کنی.
- پرتابل و کراسپلتفرم: با یه کامند ساده، میتونی برنامهت رو برای سیستمعاملهای مختلف (ویندوز، لینوکس، مک و حتی ARM) کامپایل کنی.
- کتابخونه استاندارد قوی: Go یه کتابخونه استاندارد بسیار کامل داره که برای خیلی از نیازهای معمول (مثل کار با فایل، شبکه، JSON، HTTP و...) نیازی به نصب پکیج خارجی نداری.
- پشتیبانی قوی از گوگل و جامعهی فعال: گوگل خودش از Go برای سرویسهای بزرگ استفاده میکنه، و جامعه برنامهنویسانش هم بسیار فعاله.
برای شروع باید Go رو نصب کنیم و بعد یکی از محیطهای برنامهنویسی مثل VS Code یا GoLand رو آماده کنیم.
برای تست، ترمینال رو باز کن و این دستور رو بزن:
go version
اگه نسخه Go رو دیدی، یعنی همهچیز درسته 🎉
VS Code یک ادیتور سبک و پرقدرته. برای برنامهنویسی Go:
gopls, delve, gofmt و ...)GoLand یه IDE حرفهای از شرکت JetBrains مخصوص Go هست که همه ابزارهای موردنیاز رو یکجا داره (ولی رایگان نیست).
بذار با یه مثال ساده شروع کنیم:
hello بسازmain.go داخلش ایجاد کن و اینو بنویس:package mainimport "fmt"func main() {fmt.Println("Hello, World!")}
۳. حالا ترمینال رو باز کن و دستور زیر رو بزن:
go run main.go
خروجی باید این باشه:
Hello, World!
تبریک! الان بهطور رسمی وارد دنیای Go شدی