دورة جافا: الطريق لإحتراف البرمجة من الصفر

 

3. مميزات لغة البرمجة جافا

في هذا الدرس سنرى إن شاء الله مميزات لغة البرمجة جافا.

 

1.3 خصائص الجافا 

لغة الجافا تتميز بخصائص عديدة لا تتميز بها العديد من لغات البرمجة، ومن بين هذه الخصائص أنها : 

 

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

 آمنة : الخاصية الثانية والتي أراها أيضاً مهمة هي الأمان، فلغة البرمجة جافا يتم تشغيلها على الألة الإفتراضية وبذلك فهي تعيش في بيئتها، فحص حدود المصفوفات ( Array Index Limit )، كما أنها تحتوي على إدارة للأمان والتي تمكن من تحديد المكتبة المعينة الواجب استعمالها من الكلاس.

 

 قوية : فبواسطة لغة البرمجة جافا يمكن برمجة برامج جد قوية، ربما لأن فلسفة هذه اللغة تحد من البرامج الغير موثوقة.

 

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

 

 فعالة : البرامج المكتوبة بلغة البرمجة جافا يتم معالجتها بشكل سريع، ربما ما يساعد على ذلك هي طريقة ال- Just-in-Time، والتي تترجم الكود قبل تنفيذه لكود الحاسوب، وتقوم بذلك بتخزين بعض المهام والجمل للإشتغال بها فيما بعد.

 

 كائنية التوجه : ومعناه أن لغة البرمجة جافا تعتمد نموذج للبرمجة يتم فيه بناء البرامج عن طريق الكائنات والتي تاتى

 

 ديناميكية : ومعناه أن جافا لها القدرة على التأقلم مع بيئات متعددة ومتغيرة كذلك.

 

 هناك خصائص أخرى تتميز بها جافا لكن أرى أن هذه هي أهم الخصائص اللتي تتميز بها.

 

2.3 java virtual machine

آلة جافا الافتراضية أو java virtual machine هي آلة افتراضية تستخدمها تكنولوجيا جافا لتمكن الحواسيب المختلفة من تشغيل البرامج المكتوبة بلغة جافا (من ويكيبيديا - إنتهى)

هي جزء من java runtime environment مسؤول عن تنفيذ الكود الناتج في الجافا أي bytecode، وأي برنامج بالجافا يتم تنفيذه في آلة افتراضية خاصة بة في الحالة العادية. الجزء الآخر من JRE هو مكتبة تحتوي على الكلاسات الأساسية . وهي مبرمجة بلغة السي والسي بلس بلس .

وهي موجودة لأغلب أنظمة التشغيل ومن أجزائها نجد :

- classloader وهي لتحميل الكلاسات .

- إدارة التخزين و garbage collection حيث أن الجافا تحتوي على إدارة لتنظيف الذاكرة والتخزين أوتوماتيكيا .

- excution engine ومعناها وحدة التنفيذ .

 

garbage collection 1.2.3

في لغات البرمجة كالسي بلس بلس نصف الأخطاء  تقريباً تكون بسبب توزيع أو تخصيص التخزين، وكما نعلم فإن لغة السي بلس بلس هي كذلك لغة برمجة غرضية التوجه والعمل بالكائنات أو objects يعني دائما خلق و مسح. لكن الجافا عندها الحل! وهو Java Runtime Environment فهو الذي يقوم بإدارة هذه الكائنات ومعناه أنها لا يجب أن تحرر ف garbage collector يقوم بمسحها .

يجب ذكر أن جميع لغات البرمجة الجديدة تتبع تقريباً نفس النظام، وذلك لأنه نظام يريح المبرمج ويتيح له إمكانية التركيز على الأجزاء الأخرى في البرمجة عوض التركيز على التحرير والخلق والمسح، كذلك هو الحال مع لغة البرمجة objective ك في نسختها الأخيرة.

 

3.3 API : application programming interface

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

 

4.3 فرق جافا عن جافاسكريبت : Javascript

إن قمنا بتحليل كلمة Javascript، سنرى أنها تحتوي على كلمة Java، لكن الطريقة التي تعمل بها Java ليست هي نفسها الطريقة التي تعمل بها Javascript، كما أن Java هي عبارة عن لغة برمجة و-Javascript عبارة عن لغة سكريبت (script) ما معناه أن لغة Javascript لا يمكنها أن تنتج لنا ما يسمى ببرنامج يمكن تنفيذه، مثلاً كمايكروسوفت ورود، أو إكسل..

بخلاف ذلك فإن لغة جافاسكريبت هي عبارة عن لغة تستخدم في HTML أو معها، فيها أي مباشرة داخل HTML. أما معنى معها أي أنها يمكن كتابتها في ملف مستقل بعد ذلك يتم دمج هذا الملف مع ال-HTML.

لغة جافاسكريبت، التي تم تطويرها من طرف Netscape، هي لغة سكريبت تستعمل نظام البرمجة الغرضية التوجه! أيضاً لكنها ليست جزءًا من جافا.  وهنا أهم الفوارق بين اللغتين

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

الكود المكتوب بجافاسكريبت لايجب ترجمته، بينما كود الجافا يجب ترجمته لتنفيذه

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

 

لغة جافاسكريبت هي عبارة عن لغة تستخدم في أو مع HTML، كما أنها تؤثر في بعض المتصفحات