در این بخش قصد داریم به کلید واژه و شناسه های زبان گو بپردازیم.
1.2.1 کلید واژه #
زبان گو تا نسخه فعلی فقط ۲۵ تا کلید واژه دارد که به شرح زیر ست:
1 | 2 | 3 | 4 | 5 | |
---|---|---|---|---|---|
1 | break | default | func | interface | select |
2 | case | defer | go | map | struct |
3 | chan | else | goto | package | switch |
4 | const | fallthrough | if | range | type |
5 | continue | for | import | return | var |
کلمات کلیدی فوق به ۴ دسته تقسیم میشوند که به شرح زیر است:
- کلمات کلیدی که بصورت گلوبال در بدنه قرار میگیرند «
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