لماذا أتعلم لغة جو (Golang) ؟
لغة برمجة جو ( Go ) - تُسمى أيضاً Golang لتوضيح أنها لغة برمجة. هى لغة برمجة حديثة العهد حيث تم تأسيسها من 5 سنوات تقريباً وهى لغة قوية وبسيطة فى نفس الوقت وهدفها أن تجعل المبرمج أكثر إنتاجاً! (2018).
الكثير من المبرمجين بدأوا فى تعلم ونشر لغة جو (Go) على الإنترنت بشكل واسع فى بداية عام 2017 ﻷسباب كثيرة تميز اللغة نفسها. وإليك بعض هذه الأسباب.
مميزات لغة برمجة جو (Golang) 🔗
- تُترجم إلى لغة الآلة بسرعة جداً، وتعمل بشكل سريع (Compile & execute fast, really fast)
- تعدد مهام بسيط وقوى من النوع concurrency وليس parallelism (in-core & simple concurrency)
- statically typed
- garbage collected (أى بها garbage collector)
- أنواع متغيرات بسيطة وهامة مما يجعل اجراء العمليات الحسابية قوى وسهل (simple type system)
- تشبة لغة سى (Clang)
- لغة منظمة جداً مما يُسهل عليك العمل فى بيئة التطوير (workspaces) بشكل أكثر إنتاجية وكفاءة. بيئة التطوير تتكون من:
- مجلد bin : وكلمة bin اختصار لـ binary أى ثنائى أى صفر وواحد؛ أى لغة الآلة. أى يوجد فى هذا المجلد البرامج الجاهزة للإستخدام (executables).
- مجلد pkg : وكلمة pkg هى اختصار لكلمة package ويوجد بها أشياء تخص التطوير على نظام التشغيل الحالى وبنية المعالج وهكذا (Operating System & Architecture).
- مجلد src : وكلمة src هى اختصار لكلمة source ومعناها المصدر. أى أن هذا المجلد به الكود المصدرى للبرامج التى تقوم بتطويرها. وتكون به مجلدات بإسم المشاريع، وكل مشروع به ملف بإمتداد main.go أو أكثر.
- مجلد vendor : هذا المجلد توضع فيه الإعتمادات الخارجية (external dependencies).
- تعمل على كل الأجهزة وأنظمة التشغيل والمنصات (cross platform).
لاحظ: كلمة Golang تعنى Go language أى لغة جو وتُكتب هكذا لكى نميزها عن الفعل Go فى اللغة الإنجليزية. وهكذا لغة C تُكتب Clang لكى نميزها عن حرف C فى اللغة الإنجليزية. والكثير من اللغات التى تشبه كلمة فى اللغة الإنجليزية نكتبها بهذه الطريقة.
أما عيوب لغة جو (Go) هو قلة عدد المكتبات التي تقوم يمكنك استخدامها ﻹنجاز مهام واقعية مثل إنشاء ملف pdf وما إلى ذلك من المهام الواقعية التى نستخدم فيها مكتبات خارجية لتسهيل إنشاء وتحويل وتعديل الملفات من وثائق أو صور أو حتى فيديو.
ولكن هذا القصور فى عدد وكفاءة المكتبات بسبب أن اللغة حديثة مقارنةً بباقى اللغات مثل C/CPP و Java و JavaScript و PHP و Python. ولكن من المتوقع (بل مؤكد) أن كل الدعم المطلوب سيتم توفيره ﻷن اللغة مفتوحة المصدر وقوية جداً وسهلة وسريعة جداً جداً مقارنةً بكل اللغات الأخرى مما جعل المبرمجين يحبونها.
اقرأ أيضاً: