أنواع البيانات في لغة غو:
تُحدّد أنواع البيانات (Data type) نوع البيانات التي يمكن أن يحتويها مُتغير لغة غو القابل للاستخدم، ففي لغة غو تنقسم أنواع البيانات إلى أربع فئات على النحو التالي:
- الأنواع الأساسية (Basic types): وتتضمن الأرقام والسلاسل النصية (Strings) والقيم المنطقية (Booleans).
- الأنواع المُجمعّة (Aggregate type): تتضمن المصفوفات (Arrays) والبُنيات (Struct)، وهي أكثر أنواع البيانات تعقيداً.
- الأنواع المرجعية (Reference type): وتتضمن مجموعة مختلفة من الأنواع مثل المؤشرات (pointers) والشرائح (slices) والخرائط (maps).
- أنواع الواجهة (interface type).
الأنواع الأساسية للبيانات في لغة غو Basic types:
في لغة البرمجة غو Go Language تنقسم أنواع البيانات الأساسية (Basic types) إلى عدة فئات وهي:
- الأعداد الصحيحة (integers): الأعداد الصحيحة في لغة غو تنقسم إلى أربعة أحجام مختلفة وهي: 8 بِت، 16 بِت، 32 بِت، 64 بِت ويُطلق عليها (int8، int16، int32، int64) وقد تسبقها إشارة (+) أو (-) ويُطلق عليها (Signed integer)، والنوع الآخر من هذه الأعداد هي (Unsigned integer) وتكون غير مسبوقة بأي إشارة، وأيضاً تأتي بأحجام مختلفة ويُطلق عليها المُسميات التالية: (uint8، unit16 unit32،unit64).
- الأعداد العشرية ذات الفاصلة المُتحركة (Floating Point Numbers): وهي عبارة عن أعداد تحتوي على فاصلة عشرية، وهناك نوعان من هذه الأرقام وهي: (float32 ،float64) وخصائصها الحسابية محكومة بمعيار (IEEE 754) الذي تُطبقه كل المعالجات الحديثة.
- الأرقام المُركبة (Complex Numbers): تُقدم لغة غو حجمين من هذا النوع من الأرقام وهما (complex64 وcomplex128)، ومكوناتهما هي (float32 وfloat64).
- القيم المنطقية (Booleans): إن القيمة من النوع (Boolean) لها قيمتين محتملتين وهما (false أو true)، والشروط في عبارات (if و for) هي عبارة عن قيم منطقية ومُعاملات المقارنة (comparison factors) مثل: (<)، (>)، (=) ينتج عنها أيضاً قيم منطقية.
- السلاسل النصية (Strings): في لغة البرمجة غو (Go programming language) تختلف السلاسل النصية عن اللغات الأخرى مثل (Java ،C)، بايثون (python)، فهي عبارة عن سلسلة من الأحرف (characters) يتم تمثيل كل حرف باستخدام واحد أو أكثر من البايتات (bytes) باستخدام تشفير (UTF-8 Encoding)، ولأن لغة غو تستخدم هذا النوع من التشفير فالسلاسل النصية من الممكن أن تحتوي على نص يُمثل مزيجاً من أي لغة موجودة في العالم، ويتم كتابة السلاسل النصية باستخدام علامات الاقتباس المزدوجة (double quotes).