Skip to content

جيكويري وجافاسكريبت ؟ أية علاقة ؟

جيكويري وجافاسكريبت ؟ أية علاقة ؟

29 يونيو 2016 | 00:00

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

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

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

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

توافقية جيكويري مع جميع المتصفحات المعروفة

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

مثال كتابة كود AJAX

مثلا لكتابة كود أجاكس Ajax بواسطة الجافاسكريبت الخام وكما تلاحظون الكود كثير ومتشعب :

// Just getting XHR is a mess!
if (window.XMLHttpRequest) {
  // Mozilla, Safari, ...
  request = new XMLHttpRequest();
} else if (window.ActiveXObject) {
  // IE
  try {
    request = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
    try {
      request = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (e) {}
  }
}
 
// Open, send.
request.open("GET", "https://tutomena.com/ajax-endpoint", true);
request.send(null);

بينما الأمر كشربة ماء باستعمال جيكويري :

$.ajax("https://tutomena.com/ajax-endpoint").done(function () {
  alert("success");
});

سطرين أو ثلاثة أسطر عوض 10 أو 15 في أبسط استعمالات الأجاكس فما بالك في عمليات الأجاكس المعقدة، عوض التركيز في المهم ستظطر إلى إضاعة وقتك في أمور أنت في غنى عنها. وهنا يتضح لنا العمل الكبير الذي تقوم به مكبتة جيكويري jQuery خلف الكواليس لتبسيط كتابة أكواد جافاسكريبت وهذا المثال مجرد نقطة في بحر ما تغنيك عنه هذه المكتبة، وللتأكد من الأمر يمكنك إلقاء نظرة على الشيفرة المصدرية Source code لجيكويري ولو أنني أخاف عليك من صداع الرأس 😅

خاتمة

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

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