ما الفرق بين جافا وجافا سكريبت؟


كمطور ويب قال جيريمي كيث في عام 2009، “Java هي JavaScript مثل ham to الهامستر.” الدقة الدقيقة لهذا التشبيه قابلة للنقاش ، لكن الروح الكامنة وراءها صلبة: Java و JavaScript ، على الرغم من مشاركة جذر لغوي مشترك ، هما لغتان برمجة مختلفتان للغاية. على مر السنين ، أصبحوا يتداخلون قليلاً ، لكن JavaScript تظل لغة الواجهة الأمامية السائدة التي تجعل مواقع الويب تفاعلية ، بينما تستمر Java في كونها شائعة للبرمجة من جانب الخادم والتطبيقات. إذا كنت تحاول توظيف مطور ، أو تعلم كيفية البرمجة ، أو إنشاء موقع / تطبيق ، فمن المهم معرفة الفرق بين جافا وجافا سكريبت.

تواريخ مختلفة

TLDR: جاءت Java أولاً. جافا سكريبت ، التي كانت مشابهة لجافا ولكنها غير مرتبطة تقنيًا بها ، ظهرت بعد ذلك لملء حاجة مختلفة.

تم تطوير Java على مدار أربع سنوات بواسطة جيمس جوسلينج وفريق من الباحثين في Sun Microsystems ، بدءًا من عام 1991 وإصدارها في عام 1995. طوروا لغة موجهة للكائنات يمكن تشغيلها على أنظمة تشغيل متعددة. منذ ذلك الحين تم استخدامه على مجموعة واسعة من الأجهزة ، من الهواتف إلى مركبات ناسا ، وكان أيضًا تقنية ويب متعددة الوسائط (مثل Flash و JavaScript لا تزال) عبر تطبيقات Java الصغيرة حتى عام 2016 ، عندما سحبت Java الدعم رسميًا.

تم إصدار JavaScript أيضًا في عام 1995 ولكن تم إنشاؤه على مدار 10 أيام بواسطة Brendan Eich في Netscape كطريقة لجعل صفحات الويب تفاعلية بعد أن قام المتصفح بتحميلها. كان يطلق عليه موكا في البداية في مايو 1995 ، ولكن تم شحنه مع Netscape Navigator كـ LiveScript في سبتمبر وتم تغييره إلى جافا سكريبت بحلول ديسمبر من عام 1995. نظرًا لأن اللغة تم إنشاؤها لتكون مشابهة لجافا كنظير للبرمجة النصية خفيف الوزن ، فإن الاسم يجعل في الواقع الإحساس – وكانت لعبة تسويقية جيدة أيضًا. منذ ذلك الحين ، نمت لتصبح أحد المكونات الرئيسية الثلاثة للإنترنت الحديث ، جنبًا إلى جنب HTML و CSS.

الاختلافات الفنية

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

هذا هو أكبر تشابه. لكن الاختلافات تتراكم من هناك.

1. يتم تجميع جافا ، يتم تفسير جافا سكريبت

جافا لديها نظام “الكتابة مرة واحدة ، تشغيل في أي مكان”. يعمل مثل هذا:

  1. اكتب الرمز في Java.
  2. ترجمة التعليمات البرمجية إلى رمز البايت للقراءة بواسطة الكمبيوتر.
  3. قم بتشغيل التعليمات البرمجية على Java Virtual Machine ، وهو كمبيوتر افتراضي يقوم بتشغيل Java bytecode على الأجهزة.

هذا يعني أنه عندما تريد تغيير البرنامج ، فأنت بحاجة إلى إجراء التغيير في كود Java وترجمة البرنامج بالكامل إلى رمز ثانوي مرة أخرى.

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

2. الكتابة الثابتة (Java) مقابل الكتابة الديناميكية (JavaScript)

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

يجب أن يكون “int” رقمًا ويجب أن يكون “char” حرفًا.

ومع ذلك ، يتم كتابة جافا سكريبت ديناميكيًا ، لذلك يمكن لأي متغير الاحتفاظ بأي نوع بيانات ، ويمكن أن يتغير دون مشكلة. يعمل الرمز أدناه بشكل جيد:

تتمتع Java بميزة السرعة والتصحيح هنا: الإعلان عن أنواع متغيرة يجعل العثور على المشاكل أسرع ويتيح أيضًا تشغيل التعليمات البرمجية بشكل أسرع. جافا سكريبت أسرع لمعظم المطورين للعمل ، ولكن.

3. التزامن

يمكن لـ Java تشغيل عدة سلاسل رسائل مختلفة في نفس الوقت ، مما يعني أنها يمكنها القيام بعدة أشياء في وقت واحد.

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

4. جافا لديها فئات ، وجافا سكريبت لها نماذج أولية

تذكر أن Java و JavaScript يستخدمان الكائنات لتخزين المعلومات. كلاهما يستخدمان “الميراث” ، والذي يسمح للأشياء بالحصول على خصائصها من مكان آخر. في Java ، يحصلون على خصائص من الفئات ، وهي في الأساس مخططات مع تعليمات حول كيفية بناء الكائن. في JavaScript ، يتم إنشاء كائنات جديدة باستخدام نماذج أولية أو كائنات يمكن نسخها لإنشاء كائن جديد.

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

أي واحد أحتاجه؟

إذا كانت التفاصيل الفنية تجعل عينيك تتألق ، يمكنك البدء في الانتباه مرة أخرى الآن! إذا كنت تحاول الاختيار بين جافا وجافا سكريبت ، فهذا ليس صعبًا حقًا.

ستحتاج بشكل عام إلى جافا سكريبت لـ:

  • مواقع الويب وتطبيقات الويب وواجهات الواجهة الأمامية الأخرى
  • خوادم الويب البسيطة / المهام الخلفية (مع Node.js)
  • إنشاء الألعاب والرسوم المتحركة المستندة إلى المستعرض
  • تطبيقات / ألعاب / برامج مبنية على Electron أو إطار عمل آخر عبر الأنظمة الأساسية

ومع ذلك ، قد ترغب في استخدام Java في:

  • تطبيقات الأندرويد
  • تطبيقات سطح المكتب
  • تطبيقات من جانب الخادم
  • كتابة كود للهواتف وأجهزة إنترنت الأشياء والأجهزة الأخرى

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

ومع ذلك ، إذا كنت تريد الدخول في تطوير الويب أو تخطط في الغالب للعمل على مواقع الويب وتطبيقات الويب ، فمن المحتمل أن تكون JavaScript مهارة “يجب أن تكون”. على المدى الطويل ، لا يضر أن تتعلم كليهما ، لأنهما يشملان مفاهيم يمكن أن تجعلك مبرمجًا أفضل (وأكثر قابلية للتسويق!).

إذا كنت تتطلع إلى تطوير اللعبة ، لغات البرمجة هذه سيكون أكثر ملاءمة لك.

حقوق الصورة: شعار لغة برمجة جافا، شعار JavaScript، جافا- jvm، شرح الحدث القائم على البرمجة ببساطة، فئات OOP

ذات صلة:

هل هذه المقالة مفيدة؟





Source link

تعليقات

اترك تعليقاً

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

Exit mobile version