1.2 کلید واژه و شناسه‌ها

1.2 کلید واژه و شناسه‌ها

در این بخش قصد داریم به کلید واژه و شناسه های زبان گو بپردازیم.

1.2.1 کلید واژه #

زبان گو تا نسخه فعلی فقط ۲۵ تا کلید واژه دارد که به شرح زیر ست:

12345
1breakdefaultfuncinterfaceselect
2casedefergomapstruct
3chanelsegotopackageswitch
4constfallthroughifrangetype
5continueforimportreturnvar

کلمات کلیدی فوق به ۴ دسته تقسیم می‌شوند که به شرح زیر است:

  • کلمات کلیدی که بصورت گلوبال در بدنه قرار می‌گیرند «package, import, type, var, const, func»
  • کلمات کلیدی کامپوزیت «struct, interface, map, chan»
  • کلمات کلیدی که در جریان کنترل کد استفاده می‌شوند «break, case, continue, default, if, else, for, fallthrough, goto, range, return, switch, select»
در بخش‌های دیگر کتاب ما بطور مفصل به مفاهیم کلمات کلیدی فوق می‌پردازیم.

1.2.2 شناسه‌ها #

شناسه توکنی است که باید از حروف یونیکد, ارقام یونیکد (اعداد دسته‌بندی شده در استاندارد ۸.۰ یونیکد) و خط زیرین ـ تشکیل شده باشد.

علامتکاربرد
ـنادیده گرفتن
&دسترسی به آدرس حافظه
*دسترسی مقدار داخل یک خانه حافظه

1.2.2.1 قوانین شناسه‌ها #

  • نامگذاری باید از حروف a-z یا A-Z و یا 0-9 باشد.
  • نام شناسه‌ها نباید با اعداد شروع شود.
  • نام شناسه‌ها به حروف بزرگ و کوچک حساس است.
  • استفاده از کلید واژه ممنوع است.
  • هیچ محدودیتی در تعداد حروف نام شناسه وجود ندارد و مطلوب‌ترین حالت ۴ الی ۱۵ حرف است.
 1// شناسه‌های معتبر
 2
 3_geeks23
 4geeks
 5gek23sd
 6Geeks
 7geeKs
 8geeks_geeks
 9
10// شناسه‌های نامعتبر
11
12212geeks
13if
14default

در زبان گو یکسری شناسه‌ها از قبل برای برخی از بخش‌های کد تعیین شده است که در زیر می‌توانید ببینید:

 1// Constant (ثابت ها)
 2
 3true, false, iota, nil
 4
 5// Types (تایپ ها)
 6
 7int, int8, int16, int32, int64, uint,
 8uint8, uint16, uint32, uint64, uintptr,
 9float32, float64, complex128, complex64,
10bool, byte, rune, string, error
11
12// Functions (توابع)
13
14make, len, cap, new, append, copy, close, 
15delete, complex, real, imag, panic, recover