تعلم البرمجة بلغة الجافا 

دورة تدريبية يقدمها مؤسس موقع المدرس العربي 
عماد الدين زغلول
رئيس قسم التدريب بمركز التطوير التكنولوجي بدمياط 
by: alomda60@hotmail.com

الدرس الثالث 

الأهـــداف 
أن يقارن المتدرب بين التطبيق والريمج 
أن يفهم عمل التطبيق 
أن ينظم المتدرب التطبيق 
أن يرسل الوسطاء الى التطبيق 
أن يفهم عمل البريمج 
أن يعرف الأجزاء الضرورية للبريمج 
أن يرسل البارامترات الى بريمج 
أن يستعمل وسوم لغة إتش تي إم إل لنشر بريمج في الانترنت 

قارن بين التطبيق والبريمج ؟

Applications  التطبيقات هي برامج الجافا التي تعمل من حاسب الشخص نفسه ـ الكمبيوتر المحلي ـ بمعنى أن هذا البرنامج يشتغل كبرنامج مستقل بحيث تكتب أمرا أو تنقر على أيقونة أو رمز لتشغيلها 
Applets  البريمجات هي البرامج التي تعمل عبر صفحات الانترنت 

كيف أنظم برنامجي؟ 

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

نعم على أتم الاستعداد والله المستعان وعليه التكلان 

هيا بنا أستعمل برنامج معالج النصوص الذي اخترته واكتب فيه هذا النص ولكن أذكرك بدون أرقام الأسطر والنقطتين في بداية كل سطر 

1: class SquareRoot {
2:      public static void main(String[] arguments) {
3:           int number = 625;
4:           System.out.println("The square root of "
5:                + number
6:                + " is "
7:                + Math.sqrt(number) );
8:        }
9:  }

وماذا بعد ؟ 

SquareRoot  قم بحفظ البرنامج باسم 
انتقل الى المجلد الذي يوجد فيه ثم قم بترجمة البرنامج بكتابة ما يلي في موجه الدوس 

javac SquareRoot.java

اذا تمت الترجمة بدون أخطاء فلن يعرض المترجم أية رسالة ونقول لك مبروك فقد تم انشاء ملف في نفس المجلد باسم

SquareRoot.class

وماذا عن برنامجنا المفضل ؟ 

اذا كنت تستعمل برنامجنا المفضل اتبع الخطوات المصورة التالية 

 

وفي موجه الدوس 

 

ولتشغيل البرنامج 

 

ولكن يا أستاذي العزيز هل كل مرة أريد أن أحسب الجذر التربيعي أكتب برنامج جديد هذه أعمال شاقة ؟ 

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

والطريقة المتبعة لارسال الوسطاء الى البرنامج تستلزم كتابة بعض الجمل في مصدر البرنامج لتتعامل مع هذه الوسطاء ويكتب الوسيط الأول بعد اسم التطبيق عبر سطر الأوامر وذلك بعد مسافة فارغة واحدة ويجب وضع مسافة فارغة مفردة بعد كل وسيط إضافي وفي حالة ترك مسافة داخل معلومة مرسلة يجب وضع علامات إقتباس حول الوسيط ـ المعلومة ـ 

يعني هذا أننا الآن نستعد لكتابة برنامج جديد في معالج النصوص 

   نعم أكتب النص التالي لبرنامجنا الجديد 

class NSRoot {
public static void main(String[] arguments) {
int number = 0;
if (arguments.length > 0)
number = Integer.parseInt( arguments[0] );
System.out.println("The square root of "
+ number
+ " is "
+ Math.sqrt(number) );
}
}

احفظ البرنامج باسم NSRoot.java  

قم بترجمة البرنامج بنفس الطريقة فيتكون ملف جديدفي نفس المجلد بنفس الإسم ولكن بامتداد كلاسس 

لتشغيل البرنامج استعمل المفسر واكتب الأمر التالي 

java NSRoot 81 

 

وهل هذا ما يتم في البريمجات أيضا 

في البريمجات يتم ارسال المعلومات الى البريمج بما يسمى البارامترا ت 
وكما أسلفنا فان البريمجات هي برامج تعمل في صفحات مواقع الانترنت وهي السبب الرئيسي لشهرة لغة الجافا 

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

نعم في برنامجنا المفضل اكتب النص التالي 

public class SRootApplet extends java.applet.Applet {
int number;

public void init() {
number = 625;
}

public void paint(java.awt.Graphics g) {
g.drawString("الجذر التربيعي للعدد " +
number +
" هو " +
Math.sqrt(number), 5, 50);
}
}

بعد أن تنتهي من كتابة البرنامج احفظه باسم 

SRootApplet.java 

ترجم البرنامج بكتابة الأمر التالي 

javac SRootApplet.java

 

في حالة النجاح سيتم انشاء ملف بنفس الإسم ولكن بامتداد كلاسس 

وهنا نلفت الانتباه الى أن برامج الجافا المترجمة لا تختبر باستعمال المفسر جافا ولكن يجب وضعها في صفحة انترنت وبالتالي يمكن معاينة هذه الصفحة إما بمستعرض إنترنت أو استعمال أداة خاصة توجد ضمن عدة تطوير الجافا وتسمى هذه الأداة 
appletviewer

لانشاء صفحة للعرض عبر صفحات الويب استعمل برنامج الفورنت بيج واكتب التالي في الصفحة ليست العادية ولكن إتش تي إم إل 

<applet code=SRootApplet.class width=180 height=80></applet>

والآن نرى البرنامج وهو يعمل 

 

أما إذا أردت استعمال ألأداة السابق الإشارة اليها أكتب ما يلي عبر سطر الأوامر 

appletviewer SRootApplet.html

ولكن الآن كيف يمكن ادخال أعداد الى البرنامج 

اكتب النص التالي 

public class NSRootApplet extends java.applet.Applet {
int number;

public void init() {
String parameter = getParameter("NUMBER");
if (parameter != null)
number = Integer.parseInt(parameter);
}

public void paint(java.awt.Graphics g) {
g.drawString("الجذر التربيعي لعدد " +
number +
" هو " +
Math.sqrt(number), 5, 50);
}
}

احفظ البرنامج وترجمه 
ولكي تتمكن من ارسال أعداد الى البرنامج عدل الكود في صفجة الانترنت الى الكود التالي 

<applet code=NSRootApplet.class width=300 height=100>
<param name="NUMBER" value=196>
</applet>

لمعاينة البرنامج حال العمل 

  

لارسال عدد جديد الى البرنامج 

VALUE   قم بتغيير الصفة 
وهو موجود في مصدر صفحة الوب وهنا نشير الى أنه يمكن استعمال العدد الذي نرغب فيه من البارامترات بشرط أن يكون لكل بارامتر صفة مختلفة ومحددة في العلامة <PARAM>

 

للموضوع بقية بعون الله ــــ تابعونا 

الصفحات التالية 

2  3  4  5  6  7  8  9  10 11 12 13 14 15

by: alomda60@hotmail.com

المدرس العربي 

نرحب بمقترحاتكم 

 
1