أهم 20 سؤالًا في مقابلة GO (Golang) (2024)

فيما يلي أسئلة وأجوبة مقابلة Golang للطلاب الجدد بالإضافة إلى مرشحي GO Programmer ذوي الخبرة للحصول على وظيفة أحلامهم.


1) اشرح ما هو GO؟

GO هي لغة برمجة مفتوحة المصدر تجعل من السهل إنشاء برامج بسيطة وموثوقة وفعالة. يتم إنشاء البرامج من الحزم التي تسمح خصائصها بالإدارة الفعالة للتبعيات.

تنزيل مجاني بصيغة PDF: أسئلة وأجوبة مقابلة برمجة GO


2) ما هو بناء الجملة في GO؟

يتم تحديد بناء الجملة في GO باستخدام نموذج Backus-Naur الممتد (EBNF)

  • الإنتاج = اسم_الإنتاج “=” [التعبير]
  • التعبير = البديل { "ل" البديل }
  • بديل = مصطلح { مصطلح }
  • المصطلح = اسم_الإنتاج l الرمز المميز ["..."الرمز المميز] l المجموعة l الخيار l التكرار
  • المجموعة = "("التعبير")"
  • الخيار = "[" التعبير "]"
  • التكرار = "{" التعبير "}"

3) اشرح ما هي السلسلة الحرفية؟

تمثل السلسلة الحرفية ثابت سلسلة تم الحصول عليه من تسلسل سلسلة من الأحرف. هناك شكلين،

  • حرفية السلسلة الخام: قيمة القيم الحرفية للسلسلة الأولية هي تسلسل أحرف بين علامتي الاقتباس الخلفيتين ''. قيمة السلسلة الحرفية هي السلسلة المكونة من الحرف غير المنقطع بين علامات الاقتباس.
  • سلسلة حرفية مفسرة: يتم تمثيله بين علامات الاقتباس المزدوجة "". يشكل النص الموجود بين علامتي الاقتباس المزدوجتين، والذي قد لا يحتوي على أسطر جديدة، قيمة الحرفي.

4) شرح الحزم في برنامج Go ؟

يتكون كل برنامج GO من حزم. يبدأ تشغيل البرنامج في الحزمة رئيسي.  يستخدم هذا البرنامج الحزم ذات مسارات الاستيراد "Fmt" و "الرياضيات/الراند".


5) شرح مساحة العمل في GO؟

يجب الاحتفاظ برمز GO داخل مساحة العمل. مساحة العمل عبارة عن تسلسل هرمي للدليل يحتوي على ثلاثة أدلة في جذره.

  • يحتوي src على ملفات مصدر GO منظمة في حزم
  • pkg يحتوي على كائنات الحزمة و
  • يحتوي bin على أوامر قابلة للتنفيذ
أسئلة مقابلة جولانج
أسئلة مقابلة جولانج

6) اشرح كيفية استخدام الحزم المخصصة بلغة GO؟

إذا كنت تجعل مكتبتك مشروعًا منفصلاً go get –table وإذا كانت مكتبتك مخصصة للاستخدام الداخلي، فيمكنك البرمجة بهذه الطريقة

  • ضمن دليل مشروعك، ضع الدليل الذي يحتوي على ملفات المكتبة
  • قم بالرجوع إلى المكتبة باستخدام المسار الخاص بها بالنسبة إلى جذر مساحة العمل الخاصة بك والتي تتكون من المشروع

على سبيل المثال، src/ myproject/ mylib/ mylib.go . . . main.go الآن، في main.go يمكنك استيراد myprojec/mylib.


7) اشرح ما هو متغير بيئة GOPATH؟

يحدد متغير البيئة GOPATH موقع مساحة العمل. إنه متغير البيئة الوحيد الذي يجب عليك تعيينه عند تطوير كود Go.


8) اشرح كيف يمكنك إجراء الاختبار في GO؟

يحتوي على إطار اختبار خفيف الوزن يتكون من اذهب للاختبار القيادة و تجريب طَرد. لكتابة اختبار عليك إنشاء ملف باسم ينتهي بـ _testing. Go الذي يحتوي على وظائف تسمى TestXXX مع وظيفة التوقيع (t *testing.T). يقوم إطار الاختبار بتشغيل كل وظيفة من هذا القبيل.

GO أسئلة المقابلة البرمجة
GO أسئلة المقابلة البرمجة

9) اشرح ما هي أنواع السلسلة؟

يمثل نوع السلسلة مجموعة قيم السلسلة، وقيم السلسلة هي تسلسل من البايتات. السلاسل بمجرد إنشائها لا يمكن تغييرها.


10) ما هي مميزات GO؟

  • GO يجمع بسرعة كبيرة
  • يدعم Go التزامن على مستوى اللغة
  • الوظائف هي كائنات من الدرجة الأولى في GO
  • GO لديها جمع القمامة
  • السلاسل والخرائط مدمجة في اللغة

11) قم بإدراج الدعم المدمج في GO؟

يتضمن الدعم المدمج المتوفر في GO

  • الحاوية: حاوية/قائمة، حاوية/كومة
  • خادم الويب: صافي/http
  • التشفير: التشفير/md5، التشفير/sha1
  • الضغط: ضغط / gzip
  • قاعدة البيانات: قاعدة البيانات/sql

12) اشرح ما هو روتين go في GO؟ كيف يمكنك التوقف عن الروتين؟

goroutine هي وظيفة قادرة على العمل بشكل متزامن مع وظائف أخرى لإيقاف goroutine، يمكنك تمرير قناة الإشارة إلى goroutine، ويتم استخدام قناة الإشارة هذه لدفع قيمة إلى عندما تريد إيقاف goroutine. يقوم goroutine باستقصاء تلك القناة بانتظام بمجرد اكتشاف إشارة، فإنه يتوقف.

Quit : = make (chan bool)

go func ( ) {

for  {

select {

case <- quit:

return

default

// do other stuff

}

}

}()

// Do stuff

// Quit goroutine

Quit <- true

13) اشرح كيف يمكنك كتابة سلاسل متعددة الأسطر في GO؟

لكتابة سلسلة متعددة الأسطر في GO، يمكنك استخدام سلسلة حرفية أولية، حيث يتم تحديد السلسلة بعلامات اقتباس خلفية بدلاً من علامات الاقتباس المزدوجة. 'السطر 1 السطر 2 السطر 3'


14) اشرح كيفية الوصول إلى وسيطات سطر الأوامر التي تم تمريرها إلى برنامج GO؟

يمكنك الوصول إلى وسيطة سطر الأوامر باستخدام osالمتغيرات .Args. على سبيل المثال،

Package main

import (

"fmt"

"OS"

)

func main () {

fmt.Println(len(os.Args), os.Args)

}

15) اشرح كيف يتم تمثيل المؤشر في GO؟

في GO، يتم تمثيل المؤشر باستخدام الحرف * (النجمة) متبوعًا بنوع القيمة المخزنة.


16) كيف يمكنك تنسيق سلسلة بدون طباعة؟

لتنسيق سلسلة بدون طباعة عليك استخدام الأمر

return fmt.Sprintf ( "at %v, %s" , e.When , e.What )

17) اشرح كيف تعمل المصفوفات في GO بشكل مختلف عن C؟

في اذهب مجموعة يعمل بشكل مختلف عما يعمل في C

  • المصفوفات هي قيم، وتعيين مصفوفة إلى أخرى ينسخ جميع العناصر
  • إذا قمت بتمرير مصفوفة إلى دالة، فستتلقى نسخة من المصفوفة، وليس مؤشرًا إليها
  • حجم المصفوفة هو جزء من نوعها. النوعان [10] int و [20] int مختلفان

18) شرح واجهات GO؟

في GO، تعد الواجهات طريقة لتحديد سلوك الكائن. يتم إنشاء واجهة باستخدام "اكتب" كلمة، متبوعة بالاسم والواجهة الرئيسية. يتم تحديد الواجهة على أنها شيئين.

  • مجموعة من الأساليب
  • ويشار إليه أيضًا بالنوع

19) اشرح ما هو نوع التأكيد المستخدم وكيف يتم ذلك؟

يتم استخدام تحويل النوع لتحويل الأنواع المختلفة في GO. يأخذ تأكيد النوع قيمة واجهة ويسترد منها قيمة النوع الصريح المحدد.


20) في لغة GO كيف يمكنك التحقق من نوع المتغير في وقت التشغيل؟

تم تخصيص نوع خاص من المحولات في GO للتحقق من النوع المتغير في وقت التشغيل، ويشار إلى هذا المحول باسم مفتاح النوع. يمكنك أيضًا تشغيل نوع قيمة الواجهة باستخدام Type Switch.

ستساعد أسئلة المقابلة هذه أيضًا في حياتك (شفهي)

مشاركة

تعليق واحد

  1. الصورة الرمزية أنانت هارال يقول:

    مجموعة جيدة من أسئلة GoLang

اترك تعليق

لن يتم نشر عنوان بريدك الإلكتروني. الحقول المشار إليها إلزامية *