متن خبر

چگونه Golang را یاد بگیریم – راهنمای مبتدیان برای مبانی

چگونه Golang را یاد بگیریم – راهنمای مبتدیان برای مبانی

شناسهٔ خبر: 449208 -




زبان برنامه نویسی Go که با نام Golang نیز شناخته می شود، در سال 2007 توسط رابرت گریزمر، راب پایک و کن تامپسون در گوگل توسعه یافت. در سال 2009 منبع باز بود.

Go رسا، مختصر، تمیز و کارآمد است. زبان به صورت ایستا با نحوی مشابه زبان برنامه نویسی C تایپ می شود.

Go برای اجرا بر روی چندین هسته طراحی شده است و برای پشتیبانی از همزمانی ساخته شده است. می‌توانید از Go برای نوشتن برنامه‌هایی استفاده کنید که باید عملکردی داشته باشند و می‌توانند در مقیاس مدرن اجرا شوند، مانند سیستم‌های توزیع شده با صدها هزار سرور در یک پلتفرم ابری.

در این مقاله، نحوه نوشتن یک برنامه اصلی CLI (واسط خط فرمان) را در Go یاد خواهید گرفت. ابتدا به طور خلاصه به برخی از ویژگی های اصلی Go می پردازیم. سپس در مورد ساختار اصلی یک فایل Go صحبت خواهیم کرد. در نهایت، نحوه تنظیم Go به صورت محلی را برای نوشتن کد یاد خواهید گرفت.

فهرست مطالب

ویژگی های Go

نحوه تنظیم Go Locally در ویندوز

چگونه با نوشتن کد در Go شروع کنیم

بسته های موجود در Go چیست؟

ماژول ها در Go چیست؟

دستور Go چیست؟

متغیرها در Go چیست؟

کنوانسیون های نامگذاری در Go

تفاوت بین کلمه کلیدی var و کلمه کلیدی const

انواع داده در Go

اپراتورها در Go

بسته بندی

ویژگی های Go

Go به عنوان زبان سمت سرور و باطن استفاده می شود

Go معمولاً برای ساخت برنامه های کاربردی سمت سرور و خدمات باطن استفاده می شود. این شامل طیف گسترده ای از برنامه های کاربردی مانند میکروسرویس ها، برنامه های کاربردی وب، سرورهای API و خدمات پایگاه داده است.

Go با در نظر گرفتن همزمانی طراحی شده است و آن را برای ساخت برنامه های کاربردی مقیاس پذیر و کارآمد سمت سرور مناسب می کند. سادگی، عملکرد و پشتیبانی داخلی آن از همزمانی، آن را به یک انتخاب مطلوب برای توسعه باطن تبدیل کرده است.

Go از نحو ساده استفاده می کند

Go یک نحو ساده و مینیمالیستی دارد. این به طور عمدی طراحی شده است که یادگیری، خواندن و نوشتن کد آسان باشد. Go یک سبک کدنویسی تمیز و مختصر را تشویق می کند.

یک نحو ساده بار روی توسعه دهندگان را کاهش می دهد و درک و نگهداری کد را برای آنها آسان تر می کند.

Go دارای زمان ساخت سریع، راه اندازی و زمان اجرا است

فرآیند کامپایل Go سریع است و به توسعه دهندگان این امکان را می دهد تا نتایج تغییرات کد خود را به سرعت مشاهده کنند.

همچنین، برنامه های Go معمولاً به سرعت راه اندازی می شوند و عملکرد زمان اجرا کارآمدی دارند.

Go یک منبع کارآمد است

برنامه های Go معمولاً در مقایسه با برخی از زبان های دیگر به منابع سیستم کمتری مانند CPU و RAM برای اجرا نیاز دارند. این تا حدودی به دلیل ماهیت استاتیکی و زمان اجرا کارآمد Go است.

نیاز کمتر به منابع، Go را برای ساخت برنامه‌هایی که باید سبک و کارآمد باشند، به‌ویژه در محیط‌هایی که منابع محدود هستند، مناسب می‌سازد. این به مقیاس پذیری بهتر و مقرون به صرفه بودن در استقرار سرور کمک می کند.

Go یک زبان کامپایل شده است

Go یک زبان کامپایل شده است، به این معنی که کد منبع قبل از اجرا به کد ماشین یا یک فرم میانی ترجمه می شود. این برخلاف زبان های تفسیر شده است که کد مستقیماً توسط یک مفسر اجرا می شود.

کامپایل مزایایی مانند اجرای سریعتر را ارائه می دهد، زیرا کد به شکلی پیش پردازش شده است که ماشین می تواند مستقیماً آن را اجرا کند. همچنین تضمین می کند که خطاهای احتمالی در مرحله کامپایل شناسایی می شوند، خطاهای زمان اجرا را کاهش می دهد و قابلیت اطمینان کلی برنامه را بهبود می بخشد.

نحوه تنظیم Go Locally در ویندوز

Go را روی سیستم خود نصب کنید

قبل از نصب Go، Command Prompt خود را باز کنید، go را تایپ کرده و enter را بزنید. این برای تأیید اینکه آیا Go را روی رایانه شخصی خود نصب کرده اید یا خیر است.

وقتی «go» را وارد می‌کنید و اینتر را فشار می‌دهید، باید پیامی دریافت کنید که او میگوید «go» به عنوان یک دستور داخلی یا خارجی، برنامه قابل اجرا یا فایل دسته‌ای شناسایی نمی‌شود.

تصویر-4
رابط خط فرمان

این بدان معنی است که شما باید آن را نصب کنید.

برای نصب Go بر روی کامپیوتر ویندوزی خود، ابتدا باید Golang را از وب سایت رسمی دانلود کنید . از تمام سیستم عامل های اصلی پشتیبانی می کند. آن را نصب کنید که با سیستم عامل شما مطابقت دارد.

تصویر
رابط وب سایت رسمی Golang

در مرحله بعد روی نصب کننده دانلود شده دوبار کلیک کنید تا Go نصب شود. دستورات را مطابق با آن دنبال کنید و Go نصب خواهد شد.

تصویر-5
برو رابط نصب
تصویر-6
رابط نصب کننده Golang

پس از نصب Go، به خط فرمان بازگردید و دوباره "go" را تایپ کنید. این بار باید دستورات متعددی را در Go مشاهده کنید.

تصویر-8
خط فرمان برای نشان دادن اتمام نصب Go

اکنون باید فضای کاری Go خود را با پیکربندی متغیرهای محیطی تنظیم کنید. به دسکتاپ خود بروید و یک پوشه به نام "go-projects" ایجاد کنید (می توانید آن را هر چه دوست دارید نامگذاری کنید). این پوشه ای است که پروژه های Go شما در آن ذخیره می شود.

ابتدا عبارت "env" را در نوار جستجوی ویندوز جستجو کنید و روی "Edit the system environment variables" کلیک کنید.

تصویر-9
ویرایش متغیرهای محیط سیستم را جستجو کنید


همانطور که در زیر می بینید روی دکمه Environment variables کلیک کنید:

تصویر-10
بر روی دکمه Environment variables کلیک کنید


شما باید مقدار متغیر GOPATH را به پوشه ای که قبلا ایجاد کرده اید تغییر دهید.

مطمئن شوید که «GOPATH» انتخاب شده است، سپس روی «ویرایش…» کلیک کنید.

تصویر-11
GOPATH را انتخاب کنید


بر روی "مرور دایرکتوری" کلیک کنید

تصویر-14
بر روی "مرور دایرکتوری" کلیک کنید

پوشه ای را که قبلاً ایجاد کرده اید ("go-projects" یا هر چیزی که نام خود را انتخاب کرده اید) انتخاب کنید و روی "OK" کلیک کنید.

تصویر-16
پوشه ای را که قبلا ایجاد کرده اید انتخاب کنید


دوباره روی "OK" کلیک کنید.

تصویر-17
روی OK کلیک کنید

دوباره روی "OK" کلیک کنید.

تصویر-18

یک بار دیگر روی "OK" کلیک کنید.

تصویر-20

Voilà! شما با تنظیم متغیر GOPATH تمام شده اید.

یک IDE راه اندازی کنید

اگر قبلاً یک IDE (محیط توسعه یکپارچه) را نصب نکرده اید، به انتخاب خود نصب کنید.

یک IDE یک ویرایشگر برای نوشتن کد است، مانند Visual Studio Code، Sublime و غیره.
این لینک دانلود ویژوال استودیو کد است .

برنامه Go Extension را در VS Code نصب کنید

در مرحله بعد، باید افزونه Go را روی Visual Studio Code نصب کنید. ویژگی هایی مانند تکمیل کد، پیمایش کد، برجسته سازی نحو، و پیشنهادات قطعه را ارائه می دهد.

تصویر-143
برو پسوند

نحوه شروع کدنویسی در Go

پوشه "go-projects" (یا هر نام دیگری که نامش را گذاشتید) را با VS Code (یا ویرایشگر کد مورد نظر خود) باز کنید. یک پوشه به نام "hello-world" ایجاد کنید (این اختیاری است) و یک فایل به نام main.go ایجاد کنید. شما می توانید نام فایل را هر چه می خواهید بگذارید.

تصویر-30
نحوه نوشتن کد در Go

در اینجا خروجی است:

تصویر-29
خروجی

ممکن است تعجب کنید که قطعه کد بالا چه کار می کند 🤔. در ادامه به تفصیل توضیح خواهم داد.

بریم 🚀🚀

Package Declaration ( package main ): هر برنامه Go با یک اعلان بسته شروع می شود که نشان می دهد فایل به کدام بسته تعلق دارد. بسته main یک بسته خاص است، زیرا نقطه ورود برنامه های اجرایی است.

بیانیه واردات ( import "fmt" ): در Go، شما بسته ها را وارد می کنید تا از عملکردها و ویژگی های آنها استفاده کنید. در اینجا، بسته fmt را وارد می کنیم که مخفف "format" است و برای عملیات ورودی و خروجی استفاده می شود.

تابع اصلی ( func main() ): هر برنامه اجرایی Go باید یک تابع main داشته باشد. وقتی برنامه خود را اجرا می کنید، اولین تابعی است که اجرا می شود.

بیانیه چاپ ( fmt.Println("Hello World") ): این خط از تابع Println از بسته fmt برای چاپ متن "Hello World" در کنسول استفاده می کند. تابع Println برای چاپ با یک کاراکتر خط جدید در پایان استفاده می شود، پس خروجی بعدی در یک خط جدید ظاهر می شود.

Packages in Go چیست؟

بسته‌ها راه Go برای سازماندهی کد هستند. بسته مجموعه ای از فایل های منبع است. باید متمرکز باشد و یک چیز واحد مانند ارسال آرگومان، رسیدگی به درخواست HTTP و غیره را انجام دهد.

برنامه ها در package main شروع به اجرا می کنند. این برنامه از پکیج های دارای مسیرهای واردات “fmt” استفاده می کند.

در Go، مسیر import یک شناسه منحصر به فرد برای یک بسته است. این مکان یک بسته را در سیستم ماژول Go مشخص می کند. مسیر import در دستور import برای وارد کردن بسته‌های خارجی یا وابستگی‌ها به کد Go شما استفاده می‌شود.

در اینجا یک تفکیک از مسیر واردات آمده است:

بسته‌های کتابخانه استاندارد: برای بسته‌هایی که بخشی از کتابخانه استاندارد Go هستند، می‌توانید مستقیماً از نام آنها در دستور import استفاده کنید.

مثلا:

 import "fmt"

بسته های محلی: اگر روی پروژه ای با چندین فایل یا بسته کار می کنید، می توانید از مسیرهای واردات نسبی برای وارد کردن بسته های محلی استفاده کنید.

به عنوان مثال، اگر بسته ای به نام mypackage در همان دایرکتوری فایل اصلی خود دارید، می توانید آن را به این صورت وارد کنید:

 import "./mypackage"

بسته های راه دور (از مخازن کنترل نسخه): Go از وارد کردن بسته ها به طور مستقیم از مخازن کنترل نسخه مانند GitHub پشتیبانی می کند. مسیر واردات شامل URL مخزن است.

مثلا:

 import "github.com/example/mypackage"

بسته های راه دور (از سرورهای سفارشی): همچنین می توانید بسته ها را از سرورهای سفارشی با تعیین URL کامل وارد کنید.

برای مثال:

 import "myserver.com/mypackage"

بسته های فروشنده: اگر یک بسته فروشنده دارید (نسخه ای از بسته ای که در مخزن پروژه شما نگهداری می شود)، می توانید آن را با استفاده از مسیری نسبت به ریشه پروژه خود وارد کنید.

مثلا:

 import "myproject/vendor/mypackage"

بسته‌هایی از حافظه پنهان Go Module: با معرفی ماژول‌های Go، هنگام استفاده از ماژول‌ها، Go به طور خودکار وابستگی‌ها را در حافظه پنهان ماژول ذخیره می‌کند. مسیرهای واردات می توانند به بسته های موجود در حافظه پنهان اشاره کنند.

مثلا:

 import "example.com/mypackage"

package main همیشه به عنوان بالای کد شما مانند شکل زیر نوشته می شود

در زیر مثالی آورده شده است:

 package main import "fmt" func main(){ fmt.Println("Hello World") }

ماژول ها در Go چیست؟

ماژول مجموعه ای از بسته ها است. این شامل اطلاعاتی درباره پروژه شما مانند وابستگی ها، نسخه Go و اطلاعات بسته است. همه پروژه های Go یک فایل go.mod دارند.

در اینجا دستور اولیه سازی فایل go.mod از ترمینال آمده است:

 go mod init <module path>

module path نیز مسیر واردات است.

تصویر-25
چگونه go.mod از ترمینال مقداردهی اولیه کنیم

تصویر بالا نشان می دهد که چگونه ماژول ها درست از ترمینال ایجاد می شوند. و این فایل go.mod تولید شده است:

تصویر-26
اسکرین شات از محتوای go.mod

دستور Go چیست؟

دستور Go به ابزار خط فرمان go در زبان برنامه نویسی Go اشاره دارد. این یک ابزار همه کاره است که می توانید از آن برای انجام کارهای مختلف مرتبط با توسعه Go مانند کامپایل، آزمایش، نصب بسته ها، مدیریت وابستگی ها و موارد دیگر استفاده کنید.

دستور go چه کاری انجام می دهد؟

دستور go بسیاری از جنبه های گردش کار توسعه Go را خودکار می کند. این برنامه وظایفی مانند کامپایل، آزمایش، مدیریت وابستگی و موارد دیگر را انجام می دهد و ساخت، آزمایش و نگهداری پروژه های Go را برای توسعه دهندگان آسان می کند. همچنین پذیرش ماژول های Go را تسهیل می کند، یک سیستم مدیریت وابستگی که برای بهبود نسخه سازی و ردیابی وابستگی در پروژه های Go معرفی شده است.

شما از دستور go در سناریوهای مختلف در طول چرخه توسعه پروژه Go استفاده می کنید:

Running Code: go run یک برنامه Go را کامپایل و اجرا می کند.

Building Executables: go build کامپایل می کند کد منبع را به یک باینری اجرایی تبدیل کنید.

کد تست: go test در بسته فعلی تست ها را اجرا می کند و go test ./... تست ها را در همه زیر شاخه ها اجرا می کند.

مدیریت بسته (با ماژول): go mod init یک ماژول جدید (پروژه Go) را مقداردهی اولیه می کند و یک فایل go.mod ایجاد می کند. go get . go mod tidy هرگونه وابستگی را که دیگر ضروری نیست حذف می کند. و go list -m all همه وابستگی ها را برای ماژول فعلی فهرست می کند.

مستندات: go doc اسناد یک بسته یا نماد را نشان می دهد.

تجزیه و تحلیل وابستگی: go list اطلاعات مربوط به بسته های موجود را فهرست می کند. go list -m -versions <module> تمام نسخه های شناخته شده یک ماژول را فهرست می کند.

قالب بندی کد: فرمت های go fmt برو کد منبع.

محیط: go env اطلاعات محیط Go را چاپ می کند.

متغیرها در Go چیست؟

متغیرها راهی برای ذخیره و دسترسی به داده ها در برنامه شما فراهم می کنند.

برای ایجاد یک متغیر، می‌توانید از ایجاد تک، ایجاد ترکیب، ایجاد بلوک یا روش ایجاد و تخصیص استفاده کنید. اکنون نمونه هایی از هر یک از آنها را مرور می کنیم.

تک خلقت

Single Creation زمانی استفاده می شود که شما نیاز به ایجاد و مقداردهی اولیه یک متغیر دارید.

مثالی از استفاده از روش ایجاد تک:

 package main import "fmt" func main() { var singleVariable int singleVariable = 10 fmt.Println(singleVariable) }

در این مثال، singleVariable اعلام شده و بعداً مقدار 10 به آن اختصاص داده شده است.

ایجاد مرکب

همچنین می توانیم چندین متغیر را همزمان ایجاد کنیم. این روش ایجاد متغیرها، تخصیص چندین نوع داده مختلف به چندین متغیر را ساده می کند.

 package main import "fmt" func main() { var a, b, c = 1, 2, "Coders" fmt.Println(a, b, c) }

ایجاد بلوک

ایجاد بلوک زمانی استفاده می شود که بخواهید دامنه متغیرها را به یک بلوک خاص محدود کنید. شما چندین متغیر را در یک بلوک کد {} اعلام و مقداردهی اولیه می کنید.

 package main import "fmt" func main() { { var blockVariable int blockVariable = 5 fmt.Println(blockVariable) } // blockVariable is not accessible here }

در این مثال، blockVar1 فقط در بلوکی که اعلام شده قابل دسترسی است.

ایجاد و اختصاص دهید

شما با استفاده از خلاصه := یک متغیر را در یک خط اعلام و مقداردهی اولیه می کنید، مانند این:

 package main import "fmt" func main() { createAndAssignVar := 42 fmt.Println(createAndAssignVar) }

در این مثال، createAndAssignVar با استفاده از خلاصه := در یک خط اعلام و مقداردهی اولیه می شود.

کنوانسیون های نامگذاری در Go

نام گذاری متغیر Go از casel case استفاده می کند. برای مثال:

 const myVariable = 20

هر زمان که نام متغیری را انتخاب کردید، تمرین خوبی است که یک نام توصیفی به آن بدهید، برای مثال conferenceName := "Linux" به جای conference := "Linux" .

تفاوت بین کلمه کلیدی var و کلمه کلیدی const در Go

دو راه برای اعلام متغیرها در Go وجود دارد: var و const . برای کسانی از شما که جاوا اسکریپت را می شناسند، این ممکن است آشنا به نظر برسد.

var برای اعلان متغیرها استفاده می شود و پس از اعلان می توان مقادیر آنها را تغییر داد.

const برای اعلام ثابت ها استفاده می شود و پس از اعلان نمی توان مقادیر آنها را تغییر داد.

در اینجا مثالی از استفاده از هر دو var و const برای اعلان متغیرها آورده شده است:

 package main import "fmt" func main() { // Using var var variable1 int = 5 variable1 = 10 // Valid, the value of variable1 can be changed // Using const const constant1 int = 5 // constant1 = 10 // Invalid, constants cannot be reassigned fmt.Println(variable1, constant1) }

در مثال بالا، variable1 می توان به یک مقدار جدید تخصیص داد، در حالی که constant1 به دلیل ماهیت const آن قابل تخصیص مجدد نیست.

انواع داده در Go

انواع مختلفی از داده ها در Golang وجود دارد که شامل number ، string ، boolean ، array ، pointer ، struct ، map و interface است.

بیایید نمونه هایی از هر یک از اینها را ببینیم تا بتوانید نحوه کار آنها را یاد بگیرید.

Number (int، float64) برای نمایش مقادیر عددی (اعداد کامل یا اعشار) استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" func main() { // Integers var integerVar int = 42 fmt.Println(integerVar) // Floating-point numbers var floatVar float64 = 3.14 fmt.Println(floatVar) }

در این مثال، integerVar یک متغیر عدد صحیح و floatVar یک متغیر ممیز شناور است.

String برای نمایش دنباله ای از کاراکترها (متن) استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" func main() { var stringVar string = "Hello, Golang!" fmt.Println(stringVar) }

در این مثال، stringVar یک متغیر رشته ای است که متن "Hello, Golang!" را نگه می دارد.

Boolean برای نمایش مقادیر منطقی ( true یا false ) استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" func main() { var boolVar bool = true fmt.Println(boolVar) }

در این مثال، boolVar یک متغیر بولی است که روی true تنظیم شده است.

Array برای ذخیره توالی با اندازه ثابت از عناصر از همان نوع استفاده می شود. در اینجا یک مثال است

 package main import "fmt" func main() { var intArray [3]int = [3]int{1, 2, 3} fmt.Println(intArray) }

در این مثال، intArray آرایه ای از اعداد صحیح با اندازه ثابت 3 است.

Pointer برای ذخیره آدرس حافظه یک متغیر استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" func main() { var originalVar int = 42 var pointerVar *int = &originalVar fmt.Println(*pointerVar) // Dereferencing the pointer }

در این مثال، pointerVar یک اشاره گر به آدرس حافظه originalVar است.

Structure (Struct) برای گروه بندی متغیرهای مختلف با یک نام واحد استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" type Person struct { Name string Age int } func main() { var personVar Person = Person{Name: "Alice", Age: 30} fmt.Println(personVar) }

در این مثال personVar ساختاری است که نمایانگر فردی با نام و سن است

Map برای نمایش جفت های کلید-مقدار استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" func main() { var myMap map[string]int = map[string]int{"one": 1, "two": 2, "three": 3} fmt.Println(myMap) }

در این مثال، myMap یک نقشه با کلیدهای رشته ای و مقادیر صحیح است.

Interface برای تعریف مجموعه ای از امضاهای متد بدون تعیین پیاده سازی استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" type Shape interface { Area() float64 } type Circle struct { Radius float64 } func (c Circle) Area() float64 { return 3.14 * c.Radius * c.Radius } func main() { var myShape Shape = Circle{Radius: 5.0} fmt.Println(myShape.Area()) }

در این مثال، Shape یک رابط است، و Circle نوعی است که متد Area رابط Shape را پیاده‌سازی می‌کند.

اپراتورها در Go

3 نوع عملگر اصلی در Go وجود دارد: عملگرهای حسابی، عملگرهای منطقی و عملگرهای رابطه ای.

اپراتورها--1-

حالا بیایید هر دسته از اپراتورها را مرور کنیم و با مثال هایی ببینیم که چگونه کار می کنند.

عملگرهای حسابی

عملگرهای حسابی زمانی استفاده می شوند که شما نیاز به انجام عملیات ریاضی پایه در کد خود دارید. آنها شامل موارد زیر است:

از جمع (+) برای جمع کردن مقادیر عددی با هم استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" func main (){ a := 5 b := 3 result := a + b // result is 8 fmt.Println(result) } 
تصویر-39
نحوه استفاده از عملگر Addition در Go

تفریق (-) برای یافتن تفاوت بین دو مقدار عددی استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" func main (){ a := 8 b := 3 result := a - b // result is 5 fmt.Println(result) 
تصویر-40
نحوه استفاده از عملگر تفریق

ضرب (*) برای محاسبه حاصل ضرب دو مقدار عددی استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" func main (){ a := 4 b := 6 result := a * b // result is 24 fmt.Println(result) 
تصویر-41
نحوه استفاده از عملگر ضرب

تقسیم (/) برای محاسبه ضریب دو مقدار عددی استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" func main(){ a := 10 b := 2 result := a / b // result is 5 fmt.Println(result) }
تصویر-42
نحوه استفاده از عملگر تقسیم

مدول (%) باقیمانده تقسیم عملوند چپ به عملوند راست را برمی گرداند. در اینجا یک مثال است:

 package main import "fmt" func main (){ a := 15 b := 7 result := a % b fmt.Println(result) }
تصویر-43
نحوه استفاده از عملگر Modulus

اپراتورهای رابطه ای

عملگرهای رابطه ای برای مقایسه مقادیر و تصمیم گیری بر اساس نتایج مقایسه استفاده می شوند. شامل موارد زیر است:

بزرگتر از (>) برای مقایسه هایی که عملوند چپ بزرگتر از عملوند راست است استفاده می شود. در اینجا یک مثال است

 package main import "fmt" func main (){ x := 8 y := 5 isGreater := x > y // isGreater is true fmt.Println(isGreater) } 
تصویر-44
نحوه استفاده از علامت بزرگتر از

کمتر از (<) برای مقایسه هایی که عملوند چپ کمتر از عملوند راست است استفاده می شود. در اینجا یک مثال است:

 package main import "fmt" func main (){ p := 12 q := 18 isLess := p < q // isLess is true fmt.Println(isLess) ] 
تصویر-45
نحوه استفاده از علامت کمتر از

Greater Than یا مساوی (>=) تحلیل می کند که آیا عملوند سمت چپ بزرگتر یا مساوی با عملوند راست است. در اینجا یک مثال است:

 package main import "fmt" func main (){ m := 5 n := 5 isGreaterOrEqual := m >= n // isGreaterOrEqual is true fmt.Println(isGreaterOrEqual) }
تصویر-46
نحوه استفاده از علامت بزرگتر یا مساوی

Less Than یا Equal to (<=) تحلیل می کند که آیا عملوند سمت چپ کمتر یا برابر با عملوند راست است.

 package main import "fmt" func main (){ r := 10 s := 15 isLessOrEqual := r <= s // isLessOrEqual is true fmt.Println(isLessOrEqual) }
تصویر-47
نحوه استفاده از علامت کمتر یا مساوی

هم ارزی (==) تحلیل می کند که آیا عملوند چپ با عملوند راست برابر است یا خیر. شما از این برای مقایسه برابری استفاده می کنید. در اینجا یک مثال است:

 package main import "fmt" func main (){ age := 25 checkAge := age == 25 // checkAge is true fmt.Println(checkAge) } 
تصویر-48
نحوه استفاده از علامت هم ارزی

Not Equal (!=) تحلیل می کند که آیا دو عملوند برابر نیستند. در اینجا یک مثال است:

 package main import "fmt" func main (){ score1 := 80 passingScore := score1 != 75 // passingScore is true fmt.Println(passingScore) }
تصویر-49
نحوه استفاده از Not Equal

عملگرهای منطقی

زمانی که نیاز به پیاده سازی منطق بولی و تصمیم گیری بر اساس شرایط متعدد دارید، از عملگرهای منطقی استفاده می کنید.

منطقی AND (&&): این عملگر فقط در صورتی true را برمی گرداند که هر دو عملوند true باشند، در غیر این صورت، false را برمی گرداند. در اینجا یک مثال است:

 package main import "fmt" func main (){ x := true y := false result := x && y // result is false fmt.Println(result) }
تصویر-50
مثالی از AND منطقی

منطقی OR (||): اگر حداقل یکی از عملوندها درست باشد، این عملگر true را برمی گرداند، در غیر این صورت، false را برمی گرداند. در اینجا یک مثال است:

 package main import "fmt" func main (){ a := true b := false result := a || b // result is true fmt.Println(result) } 
تصویر-51
مثالی از OR منطقی

Logical NOT (!): این عملگر یک عملگر unary است، به این معنی که فقط بر روی یک عملوند عمل می کند. مقدار عملوند را نفی می کند و true را به false و false را به true تبدیل می کند. در اینجا یک مثال است:

 package main import "fmt" func main (){ isSunny := true isRainy := !isSunny // isRainy is false fmt.Println(isRainy) }
تصویر-52
مثال منطقی NOT

بسته بندی

در این مقاله با زبان برنامه نویسی Go آشنا شدید و چرا دانستن آن مفید است. همچنین با ویژگی های Go و نحوه راه اندازی Go به صورت محلی در ویندوز آشنا شدید.

سپس یاد گرفتید که چگونه واقعاً نوشتن کد در Go را شروع کنید و نمونه هایی از بسیاری از ویژگی های Go را در عمل مشاهده کردید. ما همچنین در مورد اینکه بسته ها چیست، ماژول ها چگونه کار می کنند و موارد دیگر صحبت کردیم.

رفتن ارزش وقت گذاشتن را دارد. حالا برو بیشتر مطالعه کن برو.

کد نویسی مبارک!

خبرکاو

ارسال نظر




تبليغات ايهنا تبليغات ايهنا

تمامی حقوق مادی و معنوی این سایت متعلق به خبرکاو است و استفاده از مطالب با ذکر منبع بلامانع است