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

شذى الروح

  • Hero Member
  • *****
    • مشاركة: 3501
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
في: حزيران 09, 2009, 08:04:04 مسائاً
ماهو الفرق بين الجافا و الجافاسكربت؟
 كان هذا السؤال في أحد الدروس تعلم الجافا. فرغم أن كلتيهما تؤديان بعض نفس الوظائف. الا انه لايوجد أي علاقة مباشرة بين اللغتين و القضية تشابه اسماء.
 فالجافا تعتبر (Object Oriented Programming (OOP)) و اخترعها جيمس غوسلنج من (Sun Microsystems) الشهيرة بينما اخترع الجافاسكربت مجموعة (Netscape) الشهيرة أيضاً و تعتبر أيضاً (OOP).
 لكي نوضح الصورة أكثر دعونا نعتبر الجافاسكربت ابنة العم البعيدة للجافا. فهناك قواسم كثيرة مشتركة من الأوامر التي تكتب اثناء البرنامج. ولكن الجافا سكربت أقل تعقيداً من الجافا. فيكفي الطالب (المحارب) ذوي القدرات الذهنية المتوسطة أن يستوعب الجافاسكربت خلال أسبوع واحد. ولكن الجافا تستخدم لعدة وظائف مثل البرامج التطبيقية (حساب مساحة دائرة مثلاُ) و تستخدم أيضاً في الانترنت. ولكن الجافاسكربت فقط تستخدم في الانترنت. لعلك تتساءل ماذا نقصد ب (OOP)؟ فهم هذا المصطلح جيداً يغني عن الكثير. فهي تعتبر نظرية جديدة (نسبياً). وتعني أن اجزاء متفرقة من البرنامج (برامج مختلفة صغيرة) من الممكن أن ترتبط معاً لتعطي برنامجاً واحداً أشمل مكوناً من هذه البرامج الجزئية. بإختصار: الأجزاء تصنع الكل. تماماً كجسم الإنسان (شئ واحد) يتكون من (عدة أشياء) مثل الجهاز التنفسي و العظام و الدم و الجلد و اللحم. هل لاحظتم؟ فهذه الأشياء لاعلاقة مباشرة بينهم. بربكم هل هناك علاقة (واضحة) بين الدم و العظم مثلاُ؟ طبعاً لاعلاقة واضحة ولكن ارتباطهم معاً حيوي و ضروري لكي تكون نافعة للجسم.
 مثال أخر لأهمية هذا المصطلح. انظر لها على هذا النحو: تخيل أنك تريد صنع نموذج سيارة(car model). أولاً ستصنع ماكينة الإحتراق. هذه الماكينة قد تعمل لوحدها. فهي ماكينة و الكل سينظر لها أنها ماكينة وظيفتها محددة و هي عملية الإحتراق الداخلي.
 بعد ذلك تبني الهيكل (body) . هذا الهيكل قد يعمل لوحده (stand alone) أيضاً. و أخيراً تبني الأجزاء الداخلية مثل المقاعد و المقود و بقية (ألأشياء) فكل واحدة تعتبر شئ ( object ) بحد ذاتها. و كلمة شئ هنا يجب أن لاتمر مرور الكرام ككلمة عامة بل يجب أن ننظر لها كمصطلح مهم بل و مهم جداً. فالماكينة شئ و الهيكل شئ و المقاعد شئ والكفر (العجلات) شئ والمقود شئ هذه الأشياء قد تعمل لوحدها – فمن خاصية العجلات مثلاُ الدوران بفعل مؤثر خارجي. فيكفي أن يحركها طفل صغير لتسير عدة مترات. ولكن هل يكفي أحد هذه الأشياء لصنع سيارة؟ بطبيعة الحال لا. ولكن بإرتباط هذه (الأشياء-objects ) معاً نستطيع صنع (شئ واحد- an object) ذا فائدة أهم و أشمل و أعم. نواصل مع مثال نموذج السيارة. عندما تصنع الماكينة فهذه الماكينة بحد ذاتها تتكون من أصناف (classes) متنوعة. بعض هذه الأصناف قد يكون قاسماً مشتركاً مع أصناف شئ أخر. لاحظو جيداً دخول كلمة أصناف هنا و مفردها صنف (class). إذن (الشئ – object ) يتكون من عدة أصناف (classes). هذه الأصناف هي التي يمكن من خلالها ربط الأشياء المختلفة. فمثلاُ المقاعد و الهيكل ماهي العلاقة بينهم. فقط نحتاج الى صواميل (صنف) لتثبيت المقاعد على قاعدة الهيكل. المقود و العجلات يجب أن يكون بينهم وسيلة تواصل للربط بينهم. و هكذا.
 نعود للبرمجة فهي تتبع الأمثلة بعاليه. فالبرنامج ككل عبارة عن عدة برامج جزئية أصغر (objects) وكل برنامج جزئي يتكون من أصناف مختلفة (class).
 الأن هل فهمتم مصطلح – Object Oriented Programming - OOP سنفترض ذلك و هذا شئ جيد. ولكن إن لم يكن فأعد قراءة الأسطر السابقة و ياحبذا أن تفعل ذلك عدة مرات. الأن دعونا نكمل سؤال البرنامج الأصلي للفروق بين الجافا و ابنة عمتها البعيدة الجافاسكربت. الجافا قد تستخدم لوحدها من غير أي برنامج أخر لتأدية وظائفها و لكن الجافاسكربت لايمكن الاستفادة منها الا بتضمينها داخل نص ال (HTML) لكي تعمل و تؤدي الغرض منها (وقريباً بإذن الله درس خاص عنها). الجافا كما قلنا أكثر تعقيداً و التي تستخدم في بناء برامج تطبيقية رياضية. من خلال الجافا – نستطيع بناء برامج – java applet (سميت applet لأنها برنامج قصير جداً) التي تستخدم في إنشاء صفحات الانترنت و المواقع الشخصية لإضفاء بعض الجاذبية و التعددية الوظيفية على الموقع والتي لايمكن تنفيذها من خلال ال HTML لوحده أو بعض البرامج مثل الجافا سكربت و غيرها.
 الجافا سكربت تكتب داخل برنامج ال HTML – تلك الدروس و التي سلف شرحها في هذا الموقع ولاتحتاج الى عملية compilation أو Execution بل و كما فعلنا في دروس HTML نكتب برنامج ال HTML وبداخله أوامر الجافاسكربت وعند فتح صفحة الويب نرى التأثيرات.
 الجافا و من خلال ابنتها (اapplets) يجب أن تضمن داخل قطعة ال HTML تماماً مثل الجافا سكربت. ولكن الجافا بحد ذاتها مستقلة.
 بعبارة أخرى نكتب برنامجاً في الجافا وبعد ال (compilation process) ينتج لدينا صنف اسمه (Java Applet) – نغلق الجافا. ثم نفتح برنامج ال HTML و نضمن بداخلها موقع هذه ال (Applet) – لا أقل و لا أكثر. و هي سيأتي شرحها و بالتفصيل و أمثلة مختلفة في سلسلة تعلم الجافا بإذن الله عز و جل.
 الى اللقاء مع توضيح أكثر من أجل التهيئة لإستيعاب لغات البرمجة و أهميتها و فوائدها في عصر الإنترنت.
منقول لإحساسي بالفائدة لكم



كوثر7

  • Hero Member
  • *****
    • مشاركة: 1240
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
رد #1 في: حزيران 09, 2009, 08:10:19 مسائاً
شكرا لك حبيبتي لأنكي محوت بعضا من الغموض عندي


WADDAH

  • Administrator
  • Hero Member
  • *****
    • مشاركة: 7559
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
رد #2 في: حزيران 09, 2009, 08:15:12 مسائاً
رائـــع أختي شــذى
بالتوفيق إن شاء الله



المواظبة

  • زائر
رد #3 في: آب 19, 2009, 06:38:10 مسائاً
بارك الله فيك على التوضيح و إزاحة بعض الغموض
لك مني أجمل تحية


djimy

  • Hero Member
  • *****
    • مشاركة: 1257
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
رد #4 في: آب 19, 2009, 06:50:24 مسائاً
شكراااااااا جزيلا والله أعتقدتهم نفس الشئ


mrkarimos08

  • Hero Member
  • *****
    • مشاركة: 1826
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
رد #5 في: آب 23, 2009, 03:29:11 مسائاً
بارك الله فيك على المجهود


fragrance

  • Full Member
  • ***
    • مشاركة: 173
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
رد #6 في: أيلول 02, 2009, 04:12:36 مسائاً
السلام عليكم
شكرا جزيلا على المجهود لتزويدنا بهذه المعلومات
الان اصبحت لدي فكرة و زال بعض الغموض
شكرا مرة اخرى


amine dz43

  • Newbie
  • *
    • مشاركة: 7
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
رد #7 في: أيلول 29, 2009, 05:18:39 مسائاً
بارك الله فيك


ouidad20

  • Newbie
  • *
    • مشاركة: 37
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
رد #8 في: تشرين الثاني 17, 2010, 07:04:44 مسائاً
شكرا جزيلا اخت شدى عن الموضوع الرائع


riemmen

  • Sr. Member
  • ****
    • مشاركة: 357
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
رد #9 في: تشرين الثاني 17, 2010, 10:54:04 مسائاً
بارك الله فيك


ibm12

  • Newbie
  • *
    • مشاركة: 4
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
رد #10 في: آب 26, 2011, 04:39:25 صباحاً
مشكورة لأنني اليوم فقط عرفت الفرق وبفضل هذا الموضوع شكرا مرة أخرى


abdechem

  • Newbie
  • *
    • مشاركة: 3
    • مشاهدة الملف الشخصي
    • البريد الالكتروني
رد #11 في: تشرين الثاني 01, 2015, 08:08:25 مسائاً
مشكورة اختي العزيزة على هذا الشرح المميز