جو (Go)
جو لغة برمجة صغيرة من جوجل، صُنعت لتستطيع خدمة واحدة الرد على عدد هائل من الطلبات في الوقت نفسه دون أن تتوقف.
يُعرف أيضًا بـ جولانج لغة جو Golang
التعريف
جو لغة برمجة صنعتها جوجل، وهي صغيرة عن قصد. فقد بدأ مصمموها مما يتعطل فعلًا في الأنظمة الكبيرة، فأبقوا ما ينفع ورموا الباقي. ولهذا يستطيع مبرمج يعمل بالفعل أن يتعلم معظم جو في أسبوع تقريبًا، وهذه البساطة تترك مساحة للعمل الوحيد الذي صُنعت اللغة من أجله.
وهذا العمل هو القيام بأشياء كثيرة في الوقت نفسه، وأوضح مثال عليه موقع تذاكر صباح طرح المقاعد للبيع. يضغط عشرة آلاف شخص زر الشراء في الدقيقة نفسها، وكل واحد منهم ينتظر ردًا فوريًا. وأغلب اللغات تحتاج إضافة خارجية لتتحمل هذا الزحام، فيتولى أحدهم تركيبها ثم ضبطها. أما في جو فهذه القدرة جزء من اللغة نفسها، ولهذا تكون خدمة الزحام عملًا عاديًا لا بطولة.
والأمر الثاني الذي تحبه الفرق يظهر في النهاية، إذ يتحول برنامج جو بعد اكتماله إلى ملف واحد فقط. تنسخ هذا الملف إلى الخادم وتشغّله، ولا شيء آخر تثبته بجانبه. أي لا بيئة تشغيل تتابع إصداراتها، ولا قائمة قطع صغيرة يجب أن تتطابق كلها. ومن رأى برنامجًا يعمل على جهاز ويرفض العمل على الجهاز التالي يعرف تمامًا لماذا يهم هذا.
وجو تطلب مقابلًا. فهي لغة مباشرة الكلام، لذلك تكتب أسطرًا مكررة أكثر مما تكتبه في لغات أخرى، وبعض المبرمجين يجدونها مملة. وهي أيضًا الأداة الخطأ لشاشات العمل العادية، مثل قائمة الفواتير وصفحة المخزون ونموذج الحجز، لأن هذا العمل ينتهي أسرع ويكلف أقل بلغة تطبيقات الويب الشائعة. ولذلك حين تلجأ لينكي سوفت لنظم المعلومات إلى جو، فهي تلجأ إليها لقطعة واحدة شديدة الانشغال داخل نظام أكبر، لا للنظام كله.
وهذه القطعة تكون في الغالب من النوع نفسه: الجزء الذي يستقبل الرسائل من الهواتف، أو يرسل الإشعارات، أو يجيب مربع البحث ألف مرة في الدقيقة. وهي تقف عادة خلف تطبيق هاتف يجب أن يبدو فوريًا، وهناك يظهر أي تأخير أول ما يظهر. ولهذا يستحق أن تسأل أي مورّد يقترح جو سؤالًا واحدًا: ما أول شيء ينهار حين يتضاعف عدد الزوار؟ فإذا كان الجواب قاعدة البيانات لا الكود، فقد فهم المشكلة الحقيقية، وهذا هو المكان الذي تفضل لينكي سوفت أن تنفق فيه ميزانيتك.
أسئلة حول جو (Go)
هل جو هي نفسها جولانج؟
هل جو أسرع من بي إتش بي أو بايثون؟
هل أكتب نظام شركتي كله بلغة جو؟
هل يصعب إيجاد مبرمجين يعرفون جو؟
ما زلت غير متأكد كيف ينطبق هذا على مشروعك؟
أخبرنا بما تبنيه وسنجيبك بلغة واضحة.