رنا في هذه الصفحات أن نقدم لكم محاولة متواضعة للتدريب على البرمجة بلغة الجافا بشقيها تطبيقات الجافا وبريمجات الجافا
مع تحيات : عماد الدين زغلول ** رئيس قسم التدريب بمركز التطوير التكنولوجي بدمياط
ماذا نعني بالبرمجة
البرمجة تعني : مجموعة من الأوامر والتعليمات التي تعطى للحاسب في صورة برنامج مكتوب بلغة برمجة معينة بواسطة معالج نصوص ويتكون مصدر البرنامج من عدة سطور وكل سطر يعتبر جملة ويتعامل الحاسب مع كل جملة بترتيب معين لإنجاز الأمر الذي صمم البرنامج لتحقيقه
ولكن أريد أن أتعرف على أمثلة للغات البرمجة
توجد لغات برمجة عديدة إلا أنه يوجد فيها نوع من التخصص حيث يعتمد إختيار اللغة على المهام التي نريد من الحاسب إنجازها حيث أن لكل لغة ما يناسبها وهناك مهام يصعب تنفيذها بلغة معينة ولكنها تكون ميسورة بلغة أخرى ومن اللغات التي ظهرت في فترة الستينات لغة البيسك وهي لغات تدرس للمبتدئين وكلمة بيسك لفظة أوائلية تشكل الحروف الأولى من
Biginners All Symbolic Instruction Cod
وظهرت بعدها لغة فيجوال بيسك التي وضعتها ميكروسوفت وهي غنية عن التعريف ولها مميزات عديدة حيث تجمع بين سهولة لغة البيسك وتصميم برامج ذات واجهة رسومية وأيضا فيجوال بيسك سكريبت التي تقدم بريمجات تعمل ضمن صفحات الانترنت وأيضا لغة السي بلاس بلاس ذائعة الصيت وهي لغة برمجة تم ابتكارها كتطوير للغة السي التي هي الأخرى تحسين للغة البي وهناك العشرات من لغات البرمجة الأخرى ولكن الآن نأتي لبيت القصيد وموضوعنا اليوم وهي اللغة التي أدهشت العالم ألا وهي لغة الجافا
أريد أن أعرف المزيد ؟
ابتكر لغة الجافا المهندس جيمس جوزلينج في أوائل التسيعينات من القرن المنصرم 1992 أثناء عمله في مختبرات شركة صن ميكروسيستمز وذلك لإستخدامها بمثابة العقل المفكر المستخدم لتشغيل الأجهزة التطبيقية الذكية مثل التيلفزيون التفاعلي وقد كانت لغة الجافا تطويرا للغة السي بلاس بلاس وعند ولادتها أطلق عليها مبتكرها أواك بمعنى شجرة السنديان وهي الشجرة التي كان يراها من نافذة مكتبه وهو يعمل في مختبرات صن ميكروسيستمز ثم تغير الاسم الى جافا وهذا الاسم على غير العادة في تسمية لغات البرمجة ليس الحروف الأولى من كلمات جملة معينة أو تعبيرا بمعنى معين ولكنه مجرد اسم وضعه مطوروا هذه اللغة لينافس الأسماء الأخرى
ما مميزات الجافا ؟
تتميز لغة الجافا بمميزات خاصة مما يجعلها أكثر لغات البرمجة إثارة حيث تمكننا من الآتي
اضافة الحركة والصوت الى صفحات الويب
كتابة الألعاب والبرامج المساعدة
انشاء برامج ذات واجهة مستخدم رسومية
تصميم برمجيات تستفيد من كل مميزات الأنترنت
توفر لغة الجافا بيئة تفاعلية عبر الشبكة العنكبوتية وبالتالي تستعمل لكتابة برامج تعليمية للإنترنت عبر برمجيات المحاكاة الحاسوبية للتجارب العلمية وبرمجيات الفصول الإفتراضية للتعليم الإلكتروني والتعليم عن بعد
ما الذي يسهل تعلم الجافا ؟
على الرغم من صعوبة عملية البرمجة التي تتطلب عادة أربع سنوات دراسية للحصول على مؤهل جامعي في مجال تقنية المعلومات وجهاز حاسب شخصي وقدرات ذهنية مرتفعة وصبر طويل إلا أن تعلم البرمجة بلغة الجافا يعد أسهل من تعلم البرمجة بلغات أخرى والسبب هو انتشار الانترنت حيث تتوفر أدوات البرمجة بهذه اللغة على موقع شركة صن ميكروسيستمز كما يمكن تحميل برامج جافا من مواقع انترنت مختلفة
ما متطلبات البرمجة ؟
Interpreter مفسر
تتطلب بعض لغات البرمجة مفسرا يقوم بتفسير كل سطر من البرنامج ويبلغ الحاسب بالمهام التي يتعين عليه القيام بها ومن هذه اللغات لغة البيسك وتتميز اللغات التي تحتاج مفسرا بسهولة اختبارها ولكن يعيبها أنها تكون بطيئة عند تشغيلها
Compiler مترجم
يتطلب البعض الآخر من لغات البرمجة مترجما يقوم بترجمة البرنامج وتحويله الى شكل يفهمه الحاسب وتتميز البرامج المترجمة بسرعة تشغيلها ولكن يعيبها الحاجة الى وقت أطول لإختبارها حيث يكتب البرنامج ثم يترجم ثم يجرب وفي حالة وجود أخطاء يجب تصحيحها أولا ثم يعاد ترجمته ومن ثم تجريبه للتحقق من زوال الخطأ
ولغة الجافا لغة فريدة تتطلب مترجما ومفسرا
ما الذي أحتاجه لكي أكتب برنامجا بلغة الجافا ؟
Java Developers Kit ( JDK) عدة تطوير الجافا
تعتبر هذه الأداة الأولى التي وضعها مطوروا الجافا بشركة صن ميكروسيستمز ورغم وجود أدوات برمجة أخرى من عدة شركات منافسة إلا أنه من الأفضل أن نأخذ الأمر ممن طوره وهذه الأداة قد صدرت في عدة إصدارات ويمكن تحميل هذه الأدوات من موقع صن ميكروسيستمز
ثانيا محرر نصوص لكتابة البرامج
ولكن لماذا نالت الجافا هذه الشهرة والإهتمام العالمي ؟
لكي نجيب عن هذا التساؤل نتعرف أولا على الطريقة التي طورت بها لغة الجافا ففي أوائل التسعينيات من القرن العشرين 1990 اخترعت لغة الجافا شركة صن ميكروسيستمز ولهذا الإختراع قصة عجيبة حيث أن الشركة كانت قبل ذلك قد كلفت المهندس جيمس جوزلينج بوضع برامج لتشغيل الأجهزة التطبيقية الذكية مثل التيلفزيون التفاعلي باستخدام لغة سي بلاس بلاس وحينها وجد جيمس جوزلينج صعوبة في في التعامل مع هذه اللغة فقام هو وفريق العمل المساعد له بتطوير هذه اللغة فولدت لغة جديدة تتوافق مع احتياجاته فكانت لغة الجافا وقد خططت شركة صن في تلك الأيام لاستغلال هذه اللغة الوليدة في التيلفزيون التفاعلي لكي تربح المليارات وحدث نوع من البطء في مشروع التلفزيون التفاعلي ــ ربما عن قصد من الشركات الأخرى المنافسة ــ ونتيجة لذلك فكرت شركة صن في توقيف مشروع تطوير هذه اللغة الوليدة وتسريح العاملين في هذا المشروع أو نقلهم الى قسم آخر ولكن حدث ما لم يكن في الحسبان حيث أنه في هذه الفترة كانت الانترنت قد بدأت في الإنتشار بسرعة مذهلة مع نزول نظام الويندوز للأسواق وحيث أن لغة الجافا الوليدة التي اخترعت أصلا لبرمجة الأجهزة التطبيقية فيها من السمات ما يجعلها أكثر توافقا مع الشبكة العنكبوتية الدولية ـ الإنترنت ـ فقد كان لها السبق وأضافت الكثير الى الإنترنت الذي كان قبلها مقصورا على تبادل النصوص ولكن المطورين بشركة صن ابتكروا طريقة تجعل برامج الجافا تعمل بسهولة في صفحات الإنترنت وغيروا الإسم الذي كان قد أطلقه عليه مبتكرها من أواك ـ شجرة السنديان ـ الى الجافا ومن هنا أصبحت الجافا مرتبطة في شهرتها بالإنترنت حيث أن برنامج جافا صغير يوضع في صفحة من صفحات موقع على الشبكة الدولية يراه الملايين في جميع أنحاء العالم في نفس الوقت وقد كان هذا لا يتوفر الا مع الجافا مما أعطاها شهرة واسعة أكبر من شهرة نجوم هوليود ولحسن حظ شركة صن أن لغة الجافا أكدت نفسها في المجال الذي طورت له أصلا فقد بدأ الآن التيلفزيون التفاعلي في الانتشار وما يسمى سينما المنزل والمشاهدة حسب الطلب وليس هذا فقط بل إنتشر ما هو أكثر فائدة لشركة صن وهو الهاتف المحمول وللجافا أكبر دور في برمجة البرامج التي يعمل بها في أجياله السابقة واللاحقة ولا نستغرب أن يحدث نوع من الغيرة بين شركة ميكروسوفت وشركة صن ميكروسيستمز مما دفع ميكروسوفت الى أن تحذف ماكينة الجافاالافتراضية من الاصدارة الاولى للويندوز اكس بي وهذه الماكينة الافتراضية مسئولة عن عرض برامج الجافا على الانترنت ولكن ميكروسوفت تراجعت أمام طلب ملايين المستخدمين حول العالم فوضعتها مرة ثانية في الإصدارات اللاحقة وقد كانت قضية مشهورة تناولتها الصحف والمجلات خلال العام الماضي
وقد ساهم في شهرة الجافا أيضا برامجها العلمية التفاعلية التي تصلح لمعظم المناهج التعليمية في جميع مراحل التعليم وبالتالي فان لها دورا كبيرا في التعليم الالكتروني والتعليم عن بعد والفصول الافتراضية