اعلان منتصف المقال

الثلاثاء، 15 مايو 2018

مزايا الجافا Features of Java



مزايا الجافا :-


    هناك العديد من الميزات للجافا. لأجل هذه الميزات أعطوها أيضاً اسم (java buzzwords)  جافا أحجية الكلمات. ميزات جافا الواردة أدناه بسيطة وسهلة الفهم وهذه الميزات هي :-



1-      البساطة (Simple)
2-    كائنية التوجيه (Object-Oriented)
3-    قابلة للحمل (Portable)
4-    منصة مستقلة (Platform independent)
5-    مضمونة أو آمنة (Secured)
6-    متينة قوية (Robust)
7-    محايدة المعمارية (Architechture neutral)
8-    ديناميكية (Dynamic)
9-    مفسرة (Interpreted)
10- أداء عالي  (High Performance)
11-   متعددة المعالجة  (Multithreaded)
12- موزعة (Distributed)


البساطة (Simple) وفقا لشركة (Sun) ، لغة جافا بسيطة وذلك للأسباب التالية :
-          صيغة بناء الجملة مبنية على ++C  (حيث يكون من السهل جدا على المبرمجين تعلمها بعد ال ++C).
-          إزالة العديد من الميزات المربكة و / أو التي نادرا ما تستخدم، على سبيل المثال، مؤشرات صريحة (explicit pointers)، التحميل الزائد (operator overloading) ...الخ.
-          لا حاجة لإزالة الكائنات الغير مرتبطة (unreferenced objects)  لأن هناك مُجمع النفايات التلقائي (Automatic Garbage Collection) في جافا.

المنحى الكائني (bject-oriented)
المنحى الكائني او سلوك الكائن إن صح التعبير (bject-oriented) يعني أننا ننظم برامجنا كمزيج من أنواع مختلفة من الكائنات التي تدمج كل من البيانات(Data) والسلوك (behaviour).
 البرمجة الموجهة للكائنات (Object-oriented programming(OOPs)) هي منهجية تُبسط تطوير البرمجيات وصيانتها من خلال توفير بعض القواعد.
المفاهيم الأساسية لل(OOPs) هي:
1-      الكائن (Object) 2- الكلاس (الفئة) (Class) 3- التوريث (Inheritance) 4- تعدد الأشكال (Polymorphism) 5- التجريد (Abstraction) 6 الكبسلة (Encapsulation) .


منصة مستقلة (Platform Independent)



الجافا منصة مستقلة .. ماذا يعني هذا الكلام ؟
المنصة(platform) هي البيئة سواء (الأجهزة أو البرامج) التي يتم تشغيل البرنامج فيها.

هناك نوعان من المنصات (platform) المُعتمِدة على البرمجيات (software-based) والمُعتمِدة على الأجهزة القائمة (hardware-based). توفر الجافا منصتها البرمجية (software-based platform.) .

تختلف منصة جافا عن معظم المنصات الأساسية الأخرى بمعنى أنها منصة تعتمد على البرامج التي تعمل على أعلى المنصات الأخرى المعتمدة على الأجهزة. وله مكونان:
بيئة التشغيل (Runtime Environment)
واجهة برمجة التطبيقات (API(Application Programming Interface))

يمكن تشغيل شفرة جافا(Java code) على العديد من المنصات مثل ويندوز(Windows)، لينكس(Linux)، صن سولاريز (Sun Solaris)، نظم تشغيل الماك (Mac/OS) ... الخ . يتم تجميع ترميز الجافا من قبل مترجم وتحويلها إلى بيتيكود (bytecode) . هذا ال (bytecode) أو الترميز هو ترميز المنصة المستقلة لأنه يمكن تشغيله على منصات متعددة أي الكتابة مرة واحدة وتشغيل في أي مكان Write Once and Run Anywhere(WORA).

الأمنية (Secured)
الجافا محمية أو مضمونة بسبب :-
1-     لا يوجد مؤشر صريح.
2-    برامج جافا تعمل داخل جهاز ظاهري (virtual machine sandbox)



3-    كلاس لاودر(Classloader) : يضيف الأمان عن طريق فصل حزمة الفئات (the package of classes) لنظام الملفات المحلي (local file system) عن تلك التي يتم استيرادها من مصادر الشبكة(network sources).
4-   فاحص البايت كود (Bytecode Verifier): يوجد في الجافا جزء يسمى المتحقق من البايت كود و يقوم بفحص أجزاء التعليمات البرمجية لأي شفرة (Code) غير قانونية والتي يمكن أن تنتهك حق الوصول إلى الكائنات.
5-   مدير الأمن (Security Manager): يحدد ماهي الموارد التي يمكن للفئة الوصول إليها مثل القراءة والكتابة إلى القرص المحلي.
يتم توفير هذه الحماية او الأمنية من قبل لغة جافا. ويمكن أيضا توفير بعض الحماية او الأمن من قبل مطور التطبيق من خلال (SSL, JAAS, Cryptography) الخ.


المتانة (Robust):-
(Robust) ببساطة تعني قوي او متين . و تكمن متانة الجافا في ان الجافا تستخدم إدارة ذاكرة قوية. هناك قصور في المؤشرات التي تُخل بالأمن و تسبب المشاكل الأمنية . هناك مُجمِع النفايات التلقائي في جافا (automatic garbage collection). هناك معالجة الاستثناءات (exception handling) ونوع آلية التحقق (type checking mechanism) في جافا. كل هذه النقاط يجعل جافا قوية.


 

المعمارية المحايدة (Architecture-neutral)

أي أنه لا توجد خصائص تعتمد على التنفيذ، على سبيل المثال. تم تثبيت حجم الأنواع الأساسية .
فمثلاً في البرمجة بلغة ال C، النوع  (int) يحتل 2 بايت من الذاكرة لل 32 بت و 4 بايت من الذاكرة لل 64 بت. ولكن في جافا، فإنه يأخذ 4 بايت من الذاكرة لكلا النظامين (32 و 64 بت) .


القابلية للحمل Portable

نستطيع حمل كود الجافا (java bytecode)  إلى أي منصة (platform) .


أداء عالي (High-performance)
جافا أسرع من المفسر التقليدي (traditional interpretation) ]لأن رمز البايت (byte code) يكون "مغلق"[ بالنسبة للتعليمات البرمجية الأصلية لا يزال أبطأ نوعاً ما من اللغة التي تستخدم المرتجم (compiled language) (على سبيل المثال، C ++ )
________________________________________
موزّع (Distributed)
يمكننا إنشاء تطبيقات موزعة في جافا. وتستخدم (RMI  &  EJB) لإنشاء تطبيقات موزعة. ونحن بإمكاننا الوصول إلى الملفات عن طريق استدعاء الميثود (methods) من أي جهاز على شبكة الإنترنت.
________________________________________
متعدد المعالجة (Multi-threaded)
الثرييد  Thread(مؤشر الترابط) يشبه برنامج منفصل، يتم تنفيذه بشكل متزامن (concurrently)، أو هو برنامج يمكنه من التعامل مع العديد من المهام في آن واحد. يمكننا كتابة برامج جافا التي تتعامل مع العديد من المهام في آن واحد من خلال تحديد مواضيع متعددة. والميزة الرئيسية للخيوط المتعددة هي أنه لا يشغل الذاكرة لكل مؤشر ترابط. أنها تشترك في منطقة الذاكرة المشتركة. المواضيع مهمة بالنسبة إلى الوسائط المتعددة وتطبيقات الويب وما إلى ذلك.

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

ۚ فَأَمَّا الزَّبَدُ فَيَذْهَبُ جُفَاءً ۖ وَأَمَّا مَا يَنفَعُ النَّاسَ فَيَمْكُثُ فِي الْأَرْضِ ۚ
شارك المقال و انفع به غيرك
المرجع/

ليست هناك تعليقات

كافة الحقوق محفوظةلـ صن واي تكنولوجي 2016 | تصميم : رضا العبادي