آموزش زبان Go - بخش سوم : تعریف متغییرها

متغییرها به عنوان مکان‌هایی برای نگه داری چیزهایی که ما در برنامه احتیاج داریم شناخته میشوند. مثلا سن کاربر یا نام او اگر قرار باشد در طول برنامه برای استفاده نگهداری شود باید در جایی ذخیره شود اینجاست که مفهومی به نام متغییر آشکار میشود جایی برای ذخیره کردن چیزها.

·۵ دقیقه برای خواندن
آموزش زبان Go - بخش سوم : تعریف متغییرها

تخصیص استاتیک یا داینامیک

فرض کنید شما وظیفه دارید یک انبار را مدیریت کنید. باید همه چیز را در جعبه‌هایی مشخص ذخیره کنید هر کدام از جعبه‌ها دارای اسم مشخص هستند، مثلا جعبه پیچ‌ها ،جعبه مهره‌ها و ... با این راه همه چیز راحت تر خواهد بود هم ذخیره کردن و دوباره پیدا کردن آنها. نکته مهم در این شکل از ذخیره سازی شما در جعبه پیچ‌ها فقط میتوانید پیچ بگذارید نه چیز دیگری. این دقیقا همان تخصیص متغییر استاتیک است. شما باید تعیین کنید که چه چیزی را کدام متغییر ذخیره کردید و از این به بعد همیشه در آن متغییر شما میتوانید از آن نوع مقدار اولیه را قرار بدهید. حالا بیایید فرض کنیم برای کمک شخصی را به عنوان دستیار استخدام کرده‌اید این بار نیاز نیست برای جعبه‌ها از ابتدا لیبل بزنید شما هر چیزی را که میخواهید در آن جعبه قرار میدهید سپس جعبه را به دستیارتان میدهید. وظیفه دستیار شما این است که جعبه را باز کند و ببیند در داخل آن چیست و برای شما لیبل مناسب بزند. بدون شک حالت دوم برای من ساده تر است بخشی از کار را به عهده دستیارم میگذارم اما مهمترین اشکال این کار کند بودن آن است چون دستیار من باید جعبه را باز کند محتوای آن را بررسی کند روی آن برچسب بزند و در نهایت آن را ذخیره کند. هر کدام از این روش ها مزایا و معایبی دارد. ه از حوصله بحث فعلی ما خارج است شاید در جای دیگیری در رابطه با آن صحبت کردیم اما مهمترین نکته در زبان گو تخصیص متغییر نیمه داینامیک است

چطور متغییر تعریف کنیم؟

به کد زیر دقت کنید.

func main(){
	var username = "mhdi"
}

برای تعریف یک متغییر در ابتدا از کلمه کلیدی var استفاده میکنیم سپس یک اسم به متغییر میدهیم این نام میتواند دلخواه باشد البته از یک سری قوانین باید پیروی کندکه در ادامه خواهم گفت من در اینجا نام متغییر را username قرار داده‌ام. سپس یک علامت ‍‍= که ما به آن Assignment میگوییم. و در نهایت مقداری که قرار است در متغییر قرار بگیرد.

مقدار متغییر ثابت

به کد زیر دقت کنید.

func main(){
	var username = "mhdi"
	const pi = 3.14
}

عبارت دوم با const شروع میشود به این معنا که مقداری که در ابتدا به متغییر نسبت داده شده دیگر قابل تغییر نمیباشد.

تخصیص متغییر نیمه داینامیک یعنی چی؟

به کد ابتدایی دقت کنید. نوشتیم var username اما تاکید نکردیم که در username چه چیزی باید بگذاریم. هر چیزی که بعد از علامت مساوی قرار بگیرد نوع متغییر از این به بعد را تعیین میکند. مثلا در ‍‍username شما از این پس نمیتوانید به جز مقدار رشته یا string قرار بدهید.

نتیجه گیری

بحث اصلی بسیار ساده است ما به دنبال جایی برای ذخیره چیزها هستیم. اما سوال مهم که در اینجا مطرح است اینکه ما چه چیزهایی را میتوانیم در این متغیرها قرار دهیم. این مطلب جلسه آینده ما در بلاگ کدپیدیا خواهد بود پس با من همراه باشید.