لغة البرمجة التي تشغل الواتساب

اقرأ في هذا المقال


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

ما هي لغة البرمجة المستخدمة في الواتساب؟

لغة (ERLANG): هي لغة برمجة وظيفية تم تطويرها من قبل شركة Ericsson في عام 1986. تُستخدم Erlang بشكل أساسي لتطوير أنظمة الاتصالات الموزعة وذات الموثوقية العالية، مثل WhatsApp.

1- مميزات Erlang:

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

2- Erlang في WhatsApp:

  • تم تطوير WhatsApp باستخدام Erlang.
  • تُستخدم Erlang لتشغيل جميع مكونات WhatsApp، بما في ذلك خادم الرسائل الفورية وخادم قاعدة البيانات.
  • ساعدت Erlang WhatsApp على تحقيق مستوى عالٍ من الموثوقية والأداء.

ملاحظة:

  • Erlang ليست لغة برمجة شائعة مثل Java أو Python.
  • هناك عدد محدود من المطورين الذين لديهم خبرة في Erlang.

3- أمثلة على أنظمة أخرى تستخدم Erlang:

  • نظام التشغيل FreeBSD
  • خادم الويب Yaws
  • نظام إدارة قواعد البيانات Mnesia

يستخدم تطبيق واتساب خادم (Ejabberd XMPP) ويتميز بما يلي:

  • يُسهل نقل الرسائل الفورية بين مستخدمين أو أكثر في الوقت الفعلي.
  • يتميز بالمُوثوقية العالية والاستدامة حتى في ظل ذروة حركة المرور.

كيف تم تطوير تطبيق واتساب؟

بدأت فكرة المراسلة الفورية لأول مرة في عام 1961م عندما أنشأ مركز الحوسبة في معهد ماساتشوستس للتكنولوجيا نظام مشاركة الوقت المتوافق (CTSS)، يشبه هذا النظام خدمات البريد الإلكتروني الحالية ويسمح لما يصل إلى (30 مستخدماً) بتسجيل الدخول في وقت واحد ومراسلة بعضهم البعض، وليس من المستغرب أنّ هذا النظام الجديد حقق نجاحاً مطلقاً لدرجة أنّه بحلول عام 1965م، كان المئات من طلاب معهد ماساتشوستس للتكنولوجيا وجامعة نيو إنجلاند مستخدمين مسجلين بالفعل.

1. رؤى حول نقل البيانات في تطبيق واتساب:

تطبيق واتساب تقنياً يدير أكثر من 50 مليار رسالة يومياً حيث يكمن مفتاح معالجة البيانات بسلاسة في طول قائمة انتظار الرسائل كما يتم مراقبة طول قائمة انتظار الرسائل لجميع العمليات المرتبطة بالعقدة، وفي حالة رسائل الوسائط المتعددة يتم تحميل المحتويات أي الصوت أو الفيديو أو الصورة إلى خادم (HTTP) وربطها بالمحتوى ثم إرسالها إلى نقطة الاستقبال أي المتلقي في شكل صورة مصغرة، بناءً على تفضيل المستخدم يمكن إمّا عرض المحتوى أو تجاهله.

2. البروتوكول المستخدم بواسطة تطبيق واتساب:

البروتوكول الأساسي المستخدم هو بروتوكول الرسائل والتواجد القابل للتوسيع (XMPP) حيث يضمن (DSL) أمان الشبكة ويساعد أيضاً في منع نقل البيانات الخاصة، فعند إرسال الرسالة يتم وضعها في قائمة الانتظار على الخادم وتنتظر الرسالة في قائمة الانتظار حتى يعيد المستلم الاتصال لتلقي الرسالة، أمّا عند تسليم رسالة يتم إخطار المرسل بعلامة اختيار مزدوجة بالقرب من الرسالة، وبعد التسليم يتم حذف الرسائل على الفور من ذاكرة الخادم.

يساعد هذا الحذف الفوري من ذاكرة الخادم واتساب في الحفاظ على موارده عند الحد الأدنى، بالإضافة إلى ذلك يستخدم تطبيق واتساب (HTML5 WebSockets) وهي تقنية اتصال تسهل الاتصال ثنائي الاتجاه.

3. عملية التسجيل في تطبيق واتساب:

يمكن للمستخدمين التسجيل في تطبيق واتساب عن طريق إدخال رقم الهاتف المحمول الخاص بهم، وعند إدخال الرقم سيتم إرسال كلمة مرور لمرة واحدة للمستخدم والتي بمجرد التحقق منها بواسطة الجهاز ستبدأ المستخدم في شاشة الدردشة.

4. إدارة قاعدة البيانات في واتساب:

تتولى( Mnesia DB) مهمة إدارة قواعد البيانات الشاقة حيث إنّ (Mnesia) هو نظام (DBMS) موزع متعدد المستخدمين والذي يكون قاعدة البيانات الافتراضية لـ (ERLANG) حيث يساعد (Mnesia) على تحقيق استجابات أسرع للطلبات وبالتالي تحسين الكفاءة العامة.

أمّا نظام (FreeBSD) هو نظام التشغيل الذي تم بناء تطبيق واتساب عليه، وذلك بتحسين التطبيقات القائمة على (ERLANG) وتحسين (FreeBSD) حيث يستطيع تطبيق واتساب تحقيق أداء أفضل، وذلك لتخزين ملفات الوسائط المتعددة حيث يستخدم التطبيق خادم ويب حصري (YAWS).

5. التشفير من طرف إلى طرف في واتساب:

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

6. مكالمات الصوت والفيديو في واتساب:

يستخدم تطبيق واتساب تقنية تقدم عالية التجهيز بدلاً من (WebRTC) حيثي يتم استخدام برنامج ترميز الصوت (Opus / SILK) حوالي (16 كيلو هرتز بمعدل بت 20 كيلو بت في الثانية) وتقنيات ترجمة عنوان الشبكة (NAT) لتمكين الاتصال الصوتي حيث يُعد خادم (STUN) والاتصال من نظير إلى نظير من العناصر الأساسية المضمنة لتعزيز المصادقة للمستخدمين والحفاظ عليها.

7. مشاركة الموقع في واتساب:

يدمج (WhatsApp API) لخرائط (Google Android) وواجهة برمجة تطبيقات (Google Places) حيث يتم استخدام واجهة برمجة التطبيقات هذه لمشاركة الموقع بين المستخدمين، كما تم تحسين تطبيق واتساب وفقاً لاحتياجاتهم المتعددة.

8. وحدة الدفع في واتساب:

  • واجهة (UPI): تعد واجهة الدفع الموحدة إحدى وحدات الدفع الأكثر أماناً وسهولة الاستخدام وتسمح بالدفع الفوري.
  • عنوان (VPA): سيستخدم عنوان الدفع الافتراضي عنوان البريد الإلكتروني المسجل في الحساب المصرفي المعين والذي يمكن مشاركته بشكل عام بدلاً من رقم الحساب المصرفي ورمز (IFSC).
  • رمز (MPIN): هو رقم التعريف الشخصي للخدمات المصرفية عبر الهاتف المحمول هو رمز أمان مكون من 4 إلى 6 أرقام يستخدم لمصادقة جميع أنواع الأموال المحولة عبر (UPI).

ملاحظة: هذا كله يتعلق بهيكل تطبيق واتساب ولجعل (apK) مجموعة حزمة (android ،iOS ،iPhone) يستخدم اللغة لبناء واجهة المستخدم الرسومية أي واجهة مستخدم رسومية.

عالمك الرقمي، مسؤوليتك! حماية شاملة مع أفضل برامج مكافحة الفيروسات وشبكات الخصوصية (VPN) في 2024


شارك المقالة: