ody> http://go.ad2up.com/afu.php?id=922540

الأفتتاحية وتحية واجبة

بسم الله الرحمن الرحيم

قل اللهم مالك الملك تؤتي الملك من تشاء وتنزع الملك ممن تشاء وتعز من تشاء وتذل من تشاء بيدك الخير إنك على كل شيئ قدير ) صدق الله العظيم .. ( آل عمران 26 )

آخر الموضوعات ...

اهلا وسهلا welcome

أتيت اليكم من الزمن الجميل -
باقة ورد لكل زائر
..... مع كل الحب والتقدير

الأربعاء، 2 ديسمبر 2015

حكاية لغة جافا والبرمجة وتطبيقات الجوال ..



البرمجة بلغة جافا
جافا هي لغة برمجة من شركة صن ميكروسيستمز. الهدف الأساسي لنشأة جافا هو إيجاد لغة مشابهة للغة سي+ + من حيث التركيب النحوي، وكذلك برمجة كائنية التوجه، ومصممة للعمل علي اّلة افتراضية بحيث لا تحتاج إلي الترجمة من جديد عند استخدام برامجها على منصة تشغيل أو نظام تشغيل جديد، حيث قامت شركة صن بإنشاء الاّت افتراضية لتشغيل جافا على معظم منصات ونظم التشغيل الموجودة حاليا، فأصبح من الممكن ترجمة البرنامج مرة واحدة ثم تشغيله على نظم مختلفة أو ما أسمته صن ب اكتب مرة واحدة، شغل في أى مكان (الإنجليزية: Write Once, run anywhere).
بين نوفمبر 2006 ومايو 2007 تم فتح المصدر لهذه اللغة وأصبحت Open Source Code تحت ترخيص جنو.
سميت لغة الجافا من قهوة الجافا (الجاوة) التي تزرع في جزيرة جاوا، قد تطورت من مشروع كان يسمى أوك (بلوط) (من شجر البلوط الذي كان موجودًا خارج نافذة جوسلينج).
ملاحظة: يجب عدم الخلط بين "جافا" و "جافا سكريبت". فرغم تشابة اللغتين في السياق والتراكيب، إلا أنهما لغتان مختلفتان ولهما أهداف مختلفة.
مميزات التعامل بلغة جافا
تتميز لغة جافا بمميزات خاصة مما يجعلها أكثر لغات البرمجة إثارة[بحاجة لمصدر]؛ حيث أن ما يميزها الآتي:
  • السهولة.
  • داعمة و موجهة للكيانات.
  • سهولة الحصول عليها.
  • امنة.
  • قابلة للنقل و التنفيذ.
  • إضافة الحركة والصوت إلى صفحات الويب.
  • كتابة الألعاب والبرامج المساعدة.
  • إنشاء برامج ذات واجهة مستخدم رسومية.
  • تصميم برمجيات تستفيد من كل مميزات الأنترنت. توفر لغة الجافا بيئة تفاعلية عبر الشبكة العنكبوتية وبالتالي تستعمل لكتابة برامج تعليمية للإنترنت عبر برمجيات المحاكاة الحاسوبية للتجارب العلمية وبرمجيات الفصول الافتراضية للتعليم الإلكتروني والتعليم عن بعد. لا تنحصر فاعلية الجافا في الشبكة العنكبوتية فقط بل تمكننا من إنشاء برامج للاستعمال الشخصي والمهني، هذه البرامج تنجز عبر جملة من البرامج التي تسهل كتابة الأوامر كبرنامج ناتبنس وايكليبس.


التعلم
على الرغم من صعوبة عملية البرمجة التي تتطلب عادة أربع سنوات دراسية للحصول على مؤهل جامعي في مجال تقنية المعلومات وجهاز حاسب شخصي وقدرات ذهنية مرتفعة وصبر طويل إلا أن تعلم البرمجة بلغة جافا يعد أسهل من تعلم البرمجة بلغات أخرى[بحاجة لمصدر]. والسبب هو انتشار الإنترنت، حيث تتوفر أدوات البرمجة بهذه اللغة على موقع شركة صن ميكروسيستمز، كما يمكن تحميل برامج جافا من مواقع إنترنت مختلفة. وهي لغة سهلة التعلم. الإ أنها تحتاج كغيرها من اللغات إلى تطبيق وممارسة. .تعتبر لغة جافا من اللغات الحديثة جداً في عالم البرمجة التي أنتجتها شركة sunmicrosystem في عام1991. .لغة جافا تناسب تطبيقات الانترنت بصفه خاصه هذا بالإضافة إلى دعم الانواع المختلفة من التطبيقات مثل تطبيقات تعمل على جهاز واحد(DesktopApplication) أو تطبيقات تعمل على شبكه Client/serverApplication)).
تتصف لغة جافا بالصفات التالية:
  • لغة تلتزم بقواعد البرمجه بواسطة الأهداف object-orientedprogramming(oop).
  • لغة لها بيئة تشغيل خاصه بها JavaVirtualMachine(JVM) .
  • لها مكتبة فصائل ClasseLibraryكبيره وغنيه.
  • لغه مبنيه على قواعد اللغة الشهيرة c/c++.
  • تعمل برامجها على معظم نظم التشغيل PlatformIndependent.
 ما متطلبات البرمجة؟
  • Interpreter مفسر: تتطلب بعض لغات البرمجة مفسرا يقوم بتفسير كل سطر من البرنامج ويبلغ الحاسب بالمهام التي يتعين عليه القيام بها ومن هذه اللغات لغة البيسك وتتميز اللغات التي تحتاج مفسرا بسهولة اختبارها ولكن يعيبها أنها تكون بطيئة عند تشغيلها.
  • Compiler مترجم: يتطلب البعض الآخر من لغات البرمجة مترجمًا يقوم بترجمة البرنامج وتحويله إلى شكل يفهمه الحاسب، وتتميز البرامج المترجمة بسرعة تشغيلها ولكن يعيبها الحاجة إلى وقت أطول لاختبارها، حيث يكتب البرنامج ثم يترجم ثم يجرب وفي حالة وجود أخطاء يجب تصحيحها أولًا ثم يعاد ترجمته ومن ثم تجريبه للتحقق من زوال الخطأ, ولغة جافا لغة فريدة تتطلب مترجمًا ومفسرًا.
ما الذي يُحتاج إليه لكتابة برنامج بلغة جافا؟
1.     عُدة تطوير الجافا ( (Java Developers Kit (JDK) :
تعتبر هذه الأداة الأولى التي وضعها مطوروا جافا بشركة صن ميكروسيستمز، ورغم وجود أدوات برمجة أخرى من عدة شركات منافسة؛ إلا أنه من الأفضل أن نأخذ الأمر ممن طوره وهذه الأداة قد صدرت في عدة إصدارات ويمكن تحميل هذه الأدوات من موقع صن ميكروسيستمز.
1.     محرّر نصوص لكتابة المصدر : كــبرنامج المفكّرة(NotePad) والأفضل برنامج NotePad++ أو واحدة من بيئات التطوير. يفضّل الأغلبيّة بيئات التطوير الحرّة بالأخصّ eclipse و NetBeans.
ولكن لماذا نالت جافا هذه الشهرة والاهتمام العالمي؟
للإجابة على هذا التساؤل, نتعرف أولًا على الطريقة التي طورت بها لغة جافا. في أوائل التسعينيات من القرن العشرين 1990 م اختُرعت لغة جافا على يد شركة صن ميكروسيستمز ولهذا الاختراع قصة عجيبة، حيث أن الشركة كانت قبل ذلك قد كلفت المهندس جيمس جوسلينج بوضع برامج لتشغيل الأجهزة التطبيقية الذكية (مثل التيلفزيون التفاعلي) باستخدام لغة سي++، وحينها وجد جيمس جوزلينج صعوبة في التعامل مع هذه اللغة، فقام هو وفريق العمل المساعد له بتطوير هذه اللغة فولدت لغة جديدة تتوافق مع احتياجاته فكانت لغة جافا، وقد خططت شركة صن في تلك الأيام لاستغلال هذه اللغة الوليدة في التيلفزيون التفاعلي لكي تربح المليارات، وحدث نوع من البطء في مشروع التلفزيون التفاعلي ــ ربما عن قصد من الشركات الأخرى المنافسة ــ ونتيجة لذلك فكرت شركة صن في توقيف مشروع تطوير هذه اللغة الوليدة وتسريح العاملين في هذا المشروع أو نقلهم إلى قسم آخر، ولكن حدث ما لم يكن في الحسبان حيث أنه في هذه الفترة كانت شبكة الإنترنت قد بدأت في الانتشار بسرعة مذهلة مع نزول نظام ويندوز للأسواق، وحيث أن لغة جافا الوليدة التي اخترعت أصلًا لبرمجة الأجهزة التطبيقية فيها من السمات ما يجعلها أكثر توافقًا مع الشبكة العنكبوتية الدولية ـ الإنترنت ـ، فقد كان لها السبق وأضافت الكثير إلى الإنترنت (الذي كان قبلها مقصورًا على تبادل النصوص)، ولكن المطورين بشركة صن ابتكروا طريقة تجعل برامج جافا تعمل بسهولة في صفحات الإنترنت، وغيروا الاسم الذي كان قد أطلقه عليه مبتكرها من أواك (شجرة السنديان) إلى جافا، ومن هنا أصبحت جافا مرتبطة في شهرتها بالإنترنت حيث أن برنامج جافا صغير يوضع في صفحة من صفحات موقع على الشبكة الدولية يراه الملايين في جميع أنحاء العالم في نفس الوقت، وقد كان هذا لا يتوفر الا مع جافا مما أعطاها شهرة واسعة، ولحسن حظ شركة صن أن لغة جافا أكدت نفسها في المجال الذي طورت له أصلًا، فقد بدأ الآن التيلفزيون التفاعلي في الانتشار وما يسمى سينما المنزل والمشاهدة حسب الطلب، وليس هذا فقط؛ بل انتشر ما هو أكثر فائدة لشركة صن وهو الهاتف المحمول، وللجافا أكبر دور في برمجة البرامج التي يعمل بها في أجياله السابقة واللاحقة، ولا نستغرب أن يحدث نوع من الغيرة بين شركة ميكروسوفت وشركة صن ميكروسيستمز مما دفع ميكروسوفت إلى أن تحذف ماكينة جافاالافتراضية من الاصدارالأول لويندوز اكس بي، وهذه الماكينة الافتراضية مسئولة عن عرض برامج الجافا على الإنترنت، ولكن ميكروسوفت تراجعت أمام طلب ملايين المستخدمين حول العالم فوضعتها مرة ثانية في الإصدارات اللاحقة، وقد كانت قضية مشهورة تناولتها الصحف والمجلات خلال العام الماضي.
وقد ساهم في شهرة الجافا أيضا برامجها العلمية التفاعلية التي تصلح لمعظم المناهج التعليمية في جميع مراحل التعليم، وبالتالي فإن لها دورًا كبيرًا في التعليم الإلكتروني والتعليم عن بعد والفصول الافتراضية.

 الإصدارات المتوفرة من الجافا  :

Java SE

الإصدار القياسي من الجافا بالإنجليزية (Java Standard Edition) هو الجزء الخاص ببرمجة برامج سطح المكتب (StandAlone applications).

Java EE

اصدار الإنتربرايس بالإنجليزية (Java Enterprise Edition)هو يختلف عن الإصدار القياسي في أنه خاص ببرمجة الخوادم والتطبيقات الموزعة وبرمجة الويب.

Java ME

اصدار المايكرو بالإنجليزية (Java Micro Edition) وهو إصدار خاص بالبرمجة على الهواتف المحمولة والأجهزة المحدودة في المصادر عموما وتعتبر الخيار الأول لمبرمجي ألعاب الهواتف المحمولة.

Java Fx

تقنيّة أخرى اصدرتها صن ميكروسيستمز لتطوير تطبيقات من نوع "RIA" أي "Rich Internet Applications".

التركيبة اللغوية للجافا (Syntax)

بنية جافا تستمد الكثير من بنية لغة البرمجة سي : بنية الإسناد، التعابير، التحكم، الكتل الجملية (blocks). جافا بنيت خصيصًا لتكون لغة كائنية التوجه, حيث أن كامل الكود يكون مضمنا داخل كائنات(Objects), فيما عدا المتغيرات الأساسية(الأرقام, والقيم المنطقية والأحرف), حيث أنها لم توضع ككائنات لأسباب تتعلق بالآداء.
لتجنب العديد من المشاكل, جافا لم تعتمد العديد من الخصائص, مثل التوارث المتعدد(multiple inheritance) والتحميل الزائد للعوامل(operator overloading).
جافا تستخدم نفس نوعي التعليقات الموجودين في C++, التعليقات التي تنتهي بنهاية السطر, وتبدأ بالعلامة "//"، والتعليقات المتعددة الأسطر, والتي تبدأ بالعلامة "*/" وتنتهي بالعلامة "/*".
تعتمد برمجة جافا طبعاً على تعليقات C++ كما عرف سابقًا لأنها لغة برمجة ناتجة عن تطوير لغة C++.

أمثلة

برنامج أهلا بالعالم التقليدي مكتوبا بلغة الجافا:
/*
 * Outputs "Hello, World!" and then exits
 */
 
public class HelloWorld {
   public static void main(String[] args) {
       System.out.println("Hello, World!");
   }
}
ملاحظة : يمكن الاستغناء عن "public"(يسمّى المغيّر) في السطر الأوّل من المصدر(خلاف التعليق بالطّبع)؛ في هذه الحال تكون الفئة متاحة فقط داخل حزمتها (package). فـ public يجعل منها متاحة بلا قيود.
تنبيه : لاتستخدم "private" كـمغيّر على فئات المستوى الأعلى( top-level class) لأنّه لا من شيء يمكنه الوصول إليها فيما بعد.. وهذا بِلَا فَائِدَة .
===========================


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

إرسال تعليق