Go هي لغة برمجة ذات كتابة ثابتة. تم تصميمها في الأصل بواسطة Google، وتتشارك Go في بعض أوجه التشابه مع C من حيث الصيغة. ومع ذلك، من حيث الوظائف، تأتي Go بميزات إضافية مثل سلامة الذاكرة، وجمع المهملات، والكتابة الهيكلية، وما إلى ذلك. على مدار السنوات القليلة الماضية، اكتسبت Go شعبية هائلة.
سيتناول هذا الدليل خطوات بناء وتثبيت برامج Go بمساعدة برنامج Go تجريبي.
بناء وتثبيت Go
قبل المتابعة، دعونا نلقي نظرة سريعة على ما يعنيه البناء والتثبيت في سياق برمجة Go.
في برمجة Go، يشير البناء إلى عملية ترجمة الكود المصدري إلى ملف ثنائي قابل للتنفيذ. سيحتوي الملف القابل للتنفيذ على أكواد الدعم اللازمة حتى يتمكن من العمل بشكل مستقل على النظام الأساسي المستهدف. وعلى عكس برامج Ruby/Python، لا تتطلب ملفات Go الثنائية عمومًا أي تبعيات للنظام لتعمل على نظام جديد.
يُشار إلى وضع ملف Go الثنائي في مسار ملف قابل للتنفيذ على النظام باسم تثبيت البرنامج. وكما ذكرنا سابقًا، سيشرح هذا الدليل تشغيل وبناء وتثبيت برنامج Go بسيط يطبع "Hello world".
المتطلبات الأساسية
قبل البدء، دعنا نراجع المتطلبات الأساسية التي ستحتاج إلى تلبيتها لمتابعة هذا البرنامج التعليمي:
- نظام Ubuntu 20.04 مهيأ بشكل صحيح. تحقق من كيفية تثبيت وتهيئة خادم Ubuntu.
- مستخدم ليس بجذر يتمتع بامتيازات sudo. مطلوب إذن الجذر لإجراء تغييرات على مستوى النظام. من هذا البرنامج التعليمي يمكنك معرفة كيفية منح صلاحية sudo لمستخدم غير root user.
- بيئة برمجة Go مهيأة بشكل صحيح.
أولاً، سنستعرض سريعًا تثبيت وتهيئة بيئة برمجة 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 التالي:
|
1 |
sudo apt update && sudo apt install golang-go |

تحقق من إصدار Go:
|
1 |
go version |
● تثبيت Go باستخدام snap
حزم Snap هي حزم Linux عالمية يمكن تثبيتها على أي توزيعة مدعومة. يسرد Snapcraft جميع التوزيعات المدعومة مع أدلة التثبيت. على Ubuntu، يتم تمكين دعم snap افتراضيًا. تتوفر Go أيضًا كحزمة snap. يجب أن تضع في اعتبارك أنها ليست مدعومة رسميًا من قِبل Golang. تتم إدارة حزمة snap بواسطة موفر خارجي.
لتثبيت Go snap، قم بتشغيل الأمر التالي:
|
1 |
sudo snap install go --classic |

ثم، تحقق من إصدار Go:
|
1 |
go version |
إعداد مشروع Go
يحتوي نظامنا على جميع الأدوات اللازمة لبدء تطوير التطبيقات في Go. حان الوقت لإنشاء مشروعنا التجريبي. أولاً، قم بإنشاء دليل مخصص لمشروعنا:
|
1 |
mkdir -v demo_project |

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

هنا، قم بإنشاء ملف نصي جديد باسم main.go:
|
1 |
nano main.go |
يتميز الكود التالي ببرنامج بسيط سيطبع "Hello world" عند تشغيله. انسخ الكود:
|
1 2 3 4 5 6 7 |
package main import "fmt" func main() { fmt.Println("hello world!") } |

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

قام مترجم Go ببناء ملف المصدر إلى ملف ثنائي وقام بتنفيذه. كما أنه يتحقق من أن البرنامج يعمل بنجاح.
تكوين مساحة عمل Go
من أجل تثبيت برامج Go بشكل صحيح، نحتاج إلى تكوين مساحة عمل Go و GOPATH.
أولاً، قم بإنشاء بنية الدليل:
|
1 |
mkdir -pv $HOME/go/{bin,src} |

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

أضف السطور التالية في نهاية الملف:
|
1 2 3 |
export GOPATH=$HOME/go export GOBIN=$GOPATH/bin export PATH=$PATH:$GOPATH/bin:/usr/local/go/bin |

أعد تحميل bashrc:
|
1 |
source ~/.bashrc |
تحقق مما إذا كان التغيير ناجحًا:
|
1 |
echo $PATH |
بناء ملفات Go الثنائية
سيوضح هذا القسم كيفية تجميع أكواد Go في ملف ثنائي مستقل قابل للتوزيع. لن يحتوي الملف الثنائي على كود Go فحسب، بل سيحتوي أيضًا على أكواد نظام إضافية لتشغيل الملف الثنائي. لتجميع الكود الخاص بنا، قم بتشغيل الأمر التالي:
|
1 |
go build main.go |

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

هذا البرنامج جاهز للتوزيع على أجهزة الكمبيوتر الأخرى.
● تغيير اسم الملف الثنائي
عند البناء، ستختار Go تلقائيًا اسمًا للملف القابل للتنفيذ. هناك خياران ممكنان عندما يتعلق الأمر باختيار الاسم.
- إذا تم استخدام Go modules، فسيستخدم الملف القابل للتنفيذ الجزء الأخير من اسم الوحدة.
- إذا لم يتم استخدام أي وحدة Go، فستستخدم Go اسم الدليل الحالي أو اسم ملف المصدر.
يتطلب العمل مع برامج أكثر تعقيدًا اصطلاح تسمية مختلفًا. في مثل هذه السيناريوهات، لا تكون طرق التسمية الافتراضية هذه مفيدة جدًا. في مثل هذه الحالة، فإن أفضل طريقة هي تخصيص المخرجات باستخدام العلامة -o. دعنا نجرِ عرضًا سريعًا. قم ببناء برنامج Go باستخدام العلامة -o لتحديد اسم ملف مختلف:
|
1 |
go build -o bin/hello |

تخبر العلامة -o Go بمطابقة المخرجات مع الوسيطة المحددة. في هذه الحالة، سيكون الملف القابل للتنفيذ موجودًا تحت الدليل bin وباسم hello.
بعد ذلك، اختبر الملف الجديد القابل للتنفيذ:
|
1 |
./bin/hello |
تثبيت برامج Go
حتى الآن، قمنا بشرح بناء ملفات Go الثنائية القابلة للتوزيع من ملفات المصدر. يمكننا توزيعها على أنظمة أخرى، ونشرها وإجراء الاختبارات. ومع ذلك، لا يمكن تشغيلها خارج أدلة المصدر الخاصة بها. إذا كنت تخطط لاستخدام البرنامج بنشاط، فقد يكون هذا القيد مزعجًا للغاية. لتسهيل الأمور، يمكننا تثبيت برامج Go والوصول إليها من أي مكان في النظام.
لتثبيت البرنامج، قم بتشغيل أمر Go التالي في دليل المصدر:
|
1 |
go install |

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

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

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

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




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