العودة إلى المدونة

بناء وتثبيت برامج Go

بناء وتثبيت برامج Go

Go هي لغة برمجة ذات كتابة ثابتة. تم تصميمها في الأصل بواسطة Google، وتتشارك Go في بعض أوجه التشابه مع C من حيث الصيغة. ومع ذلك، من حيث الوظائف، تأتي Go بميزات إضافية مثل سلامة الذاكرة، وجمع المهملات، والكتابة الهيكلية، وما إلى ذلك. على مدار السنوات القليلة الماضية، اكتسبت Go شعبية هائلة.

سيتناول هذا الدليل خطوات بناء وتثبيت برامج Go بمساعدة برنامج Go تجريبي.

بناء وتثبيت Go

قبل المتابعة، دعونا نلقي نظرة سريعة على ما يعنيه البناء والتثبيت في سياق برمجة Go.

في برمجة Go، يشير البناء إلى عملية ترجمة الكود المصدري إلى ملف ثنائي قابل للتنفيذ. سيحتوي الملف القابل للتنفيذ على أكواد الدعم اللازمة حتى يتمكن من العمل بشكل مستقل على النظام الأساسي المستهدف. وعلى عكس برامج Ruby/Python، لا تتطلب ملفات Go الثنائية عمومًا أي تبعيات للنظام لتعمل على نظام جديد.

يُشار إلى وضع ملف Go الثنائي في مسار ملف قابل للتنفيذ على النظام باسم تثبيت البرنامج. وكما ذكرنا سابقًا، سيشرح هذا الدليل تشغيل وبناء وتثبيت برنامج Go بسيط يطبع "Hello world".

المتطلبات الأساسية

قبل البدء، دعنا نراجع المتطلبات الأساسية التي ستحتاج إلى تلبيتها لمتابعة هذا البرنامج التعليمي:

أولاً، سنستعرض سريعًا تثبيت وتهيئة بيئة برمجة Go. للحصول على خطوة بخطوة أكثر تفصيلاً دليل حول تثبيت Go تحقق هنا.

تثبيت Go

تتوفر Go على جميع الأنظمة الأساسية الرئيسية (Windows و Linux و macOS). وهي متاحة رسميًا مباشرة من Golang. بسبب اسم الموقع الإلكتروني، غالبًا ما يُشار إلى Go باسم Golang. هنا، سنشير دائمًا إلى لغة برمجة Go باسم Go وإلى موقع Golang الإلكتروني باسم Golang.

تقدم Golang وثائق مفصلة حول تثبيت Go لجميع الأنظمة الأساسية المدعومة. ومع ذلك، تصف الطريقة الرسمية التثبيت اليدوي. في كل مرة يتم فيها إصدار نسخة جديدة، يتعين عليك تحديث التثبيت يدويًا إلى أحدث إصدار. بدلاً من ذلك، يمكننا تثبيت Go مباشرة باستخدام APT (من مستودعات Ubuntu الافتراضية) أو snap (من Snapcraft).

●     تثبيت Go باستخدام APT

Go متاح مباشرة من مستودعات Ubuntu الرسمية. ومع ذلك، فإنه ليس دائمًا أحدث إصدار من Go. هناك أيضًا نوعان من Go متاحان من مستودع Ubuntu: golang-go و gccgo-go. بينما golang-go هي النسخة الرسمية من Golang، فإن gccgo-go هي واجهة Go لـ GCC (كجزء من مترجم GNU). بشكل عام، فإن golang-go هي الخيار المفضل.

لتثبيت golang-go، قم بتشغيل أمر APT التالي:

Go Programs apt update and go install

تحقق من إصدار Go:

go version
●     تثبيت Go باستخدام snap

حزم Snap هي حزم Linux عالمية يمكن تثبيتها على أي توزيعة مدعومة. يسرد Snapcraft جميع التوزيعات المدعومة مع أدلة التثبيت. على Ubuntu، يتم تمكين دعم snap افتراضيًا. تتوفر Go أيضًا كحزمة snap. يجب أن تضع في اعتبارك أنها ليست مدعومة رسميًا من قِبل Golang. تتم إدارة حزمة snap بواسطة موفر خارجي.

لتثبيت Go snap، قم بتشغيل الأمر التالي:

snap install go

ثم، تحقق من إصدار Go:

snap go version

إعداد مشروع Go

يحتوي نظامنا على جميع الأدوات اللازمة لبدء تطوير التطبيقات في Go. حان الوقت لإنشاء مشروعنا التجريبي. أولاً، قم بإنشاء دليل مخصص لمشروعنا:

mkdir demo_project

بعد ذلك، قم بتغيير الدليل الحالي إلى الدليل الذي تم إنشاؤه حديثًا:

cd demo_project

هنا، قم بإنشاء ملف نصي جديد باسم main.go:

يتميز الكود التالي ببرنامج بسيط سيطبع "Hello world" عند تشغيله. انسخ الكود:

Go Programs nano main_go

احفظ الملف وأغلق المحرر. تحقق من أن الكود يعمل بشكل صحيح:

run main_go

قام مترجم Go ببناء ملف المصدر إلى ملف ثنائي وقام بتنفيذه. كما أنه يتحقق من أن البرنامج يعمل بنجاح.

تكوين مساحة عمل Go

من أجل تثبيت برامج Go بشكل صحيح، نحتاج إلى تكوين مساحة عمل Go و GOPATH.

أولاً، قم بإنشاء بنية الدليل:

mkdir bin src

بعد ذلك، نحتاج إلى الإعلان عن قيمة GOPATH وإضافتها إلى PATH. افتح ملف bashrc :

Go Programs nano bashrc

أضف السطور التالية في نهاية الملف:

Go Programs nano bashrc modified

أعد تحميل bashrc:

تحقق مما إذا كان التغيير ناجحًا:

path variable

بناء ملفات Go الثنائية

سيوضح هذا القسم كيفية تجميع أكواد Go في ملف ثنائي مستقل قابل للتوزيع. لن يحتوي الملف الثنائي على كود Go فحسب، بل سيحتوي أيضًا على أكواد نظام إضافية لتشغيل الملف الثنائي. لتجميع الكود الخاص بنا، قم بتشغيل الأمر التالي:

build main_go

إذا كان هناك العديد من ملفات كود Go، فاستخدم الأمر التالي:

إذا لم يتم تحديد أي ملف، فستبحث Go عن ملفات Go في الدليل الحالي وتجمعها جميعًا. يتم تسمية كل ملف ثنائي باسم ملف Go المصدري الخاص به. في هذا المثال، قامت Go ببناء البرنامج main. قم بتشغيل البرنامج:

run main binary

هذا البرنامج جاهز للتوزيع على أجهزة الكمبيوتر الأخرى.

●     تغيير اسم الملف الثنائي

عند البناء، ستختار Go تلقائيًا اسمًا للملف القابل للتنفيذ. هناك خياران ممكنان عندما يتعلق الأمر باختيار الاسم.

  • إذا تم استخدام Go modules، فسيستخدم الملف القابل للتنفيذ الجزء الأخير من اسم الوحدة.
  • إذا لم يتم استخدام أي وحدة Go، فستستخدم Go اسم الدليل الحالي أو اسم ملف المصدر.

يتطلب العمل مع برامج أكثر تعقيدًا اصطلاح تسمية مختلفًا. في مثل هذه السيناريوهات، لا تكون طرق التسمية الافتراضية هذه مفيدة جدًا. في مثل هذه الحالة، فإن أفضل طريقة هي تخصيص المخرجات باستخدام العلامة -o. دعنا نجرِ عرضًا سريعًا. قم ببناء برنامج Go باستخدام العلامة -o لتحديد اسم ملف مختلف:

build binary with different name

تخبر العلامة -o Go بمطابقة المخرجات مع الوسيطة المحددة. في هذه الحالة، سيكون الملف القابل للتنفيذ موجودًا تحت الدليل bin وباسم hello.

بعد ذلك، اختبر الملف الجديد القابل للتنفيذ:

bin hello_go

تثبيت برامج Go

حتى الآن، قمنا بشرح بناء ملفات Go الثنائية القابلة للتوزيع من ملفات المصدر. يمكننا توزيعها على أنظمة أخرى، ونشرها وإجراء الاختبارات. ومع ذلك، لا يمكن تشغيلها خارج أدلة المصدر الخاصة بها. إذا كنت تخطط لاستخدام البرنامج بنشاط، فقد يكون هذا القيد مزعجًا للغاية. لتسهيل الأمور، يمكننا تثبيت برامج Go والوصول إليها من أي مكان في النظام.

لتثبيت البرنامج، قم بتشغيل أمر Go التالي في دليل المصدر:

go install

يتصرف هذا الأمر بنفس طريقة go build. ومع ذلك، بدلاً من ترك الملف القابل للتنفيذ في دليل المصدر، يتم وضعه في الدليل التالي:

تخبر المتغيرات GOPATH و GOBIN Go بمكان البحث عن مساحات عمل Go. GOPATH الافتراضي هو الموقع $HOME/go. لقد قمنا بتعيين GOBIN يدويًا إلى $GOPATH/bin. للتحقق من موقع GOPATH and GOBIN استخدم الأمر التالي:

go env path

تحقق من محتوى $GOPATH/bin. يجب أن يكون برنامجنا هناك:

ls go path

حان الوقت للتحقق مما إذا كان التثبيت ناجحًا. قم بتغيير الدليل الحالي إلى موقع مختلف وحاول تشغيل برنامج Go:

Go Programs check installation by running binary

أخيرًا، يجب أن تكون قادرًا على أخذ برامجك وتثبيتها في نظامك. يمكنك استخدامها من أي مكان وفي أي وقت تحتاج إليها فيه.

أفكار نهائية

في هذا البرنامج التعليمي، نجحنا في توضيح كيفية استخدام سلاسل أدوات Go لبناء ملفات ثنائية قابلة للتنفيذ من التعليمات البرمجية المصدرية. يمكن استخدام هذه الملفات الثنائية على أنظمة أخرى حتى بدون أي إعدادات لـ Go. أخيرًا، أوضحنا كيفية تثبيت برنامج Go ليكون متاحًا من أي مكان في النظام.

بالنسبة للمطورين، تقدم CloudSigma دعمًا لـ Go API لإدارة خوادمك السحابية. وهي تتيح تعديل الموارد، وتوسيع نطاق البنية التحتية.

حوسبة سعيدة!

author

Pranay Kapgate

المؤلف · CloudSigma

Preslav Dobrev هو مصمم إبداعي في CloudSigma، يركز على هوية أعمال متسقة باستخدام قنوات التسويق التقليدية والمبتكرة. هو بارع في دمج الرؤية الفنية مع التسويق الاستراتيجي لخلق سرد قصصي مؤثر للعلامة التجارية.

التعليقات

لا توجد تعليقات بعد. كن أول من يعلق.