منتديات ليدي نانا
عزيزي الزائر . هذه الرسالة تدل على انك لا تملك عضوية في هذا الموقع ., بإمكانك التسجيل , او إذا كنت عضواً عليك تسجيل دخولك إلى المنتدى لكي تستطيع متابعة التصفّح ,
منتديات ليدي نانا
عزيزي الزائر . هذه الرسالة تدل على انك لا تملك عضوية في هذا الموقع ., بإمكانك التسجيل , او إذا كنت عضواً عليك تسجيل دخولك إلى المنتدى لكي تستطيع متابعة التصفّح ,
منتديات ليدي نانا
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.



 
الرئيسيةأحدث الصورالتسجيلدخول

 

 مقدمة لدورة لغة الجافا JAVA

اذهب الى الأسفل 
كاتب الموضوعرسالة
SaGiTtaRiuS
.: مؤسس الموقع :.
.: مؤسس الموقع :.
SaGiTtaRiuS


ذكر العمر : 34
مكان الإقامة : سوريا
البلد : مقدمة لدورة لغة الجافا JAVA Sy10
الأوسمة الكُبرى : مقدمة لدورة لغة الجافا JAVA Uo_usu10
تاريخ التسجيل : 23/03/2007

مقدمة لدورة لغة الجافا JAVA Empty
مُساهمةموضوع: مقدمة لدورة لغة الجافا JAVA   مقدمة لدورة لغة الجافا JAVA Emptyالثلاثاء سبتمبر 23, 2008 8:14 pm



قبل البدء بالتعرف على لغة الجافا يجب التعرف أولاً على مفهوم اللغة ذات الأهداف الموجهة Object Oriented Programming ويرمز لها بالرمز OOP


مفاهيم اللغات ذات الاهداف الموجهة :


قبل البدء ببيان مفاهيم اللغات ذات الأهداف الموجهة يجب بيان ماهو الكينونة Object . إن المفهوم الرئيسي الذي يتم من خلاله البدء في فهم اللغات ذات الأهداف الموجهة هو الكينونة Object .


الكينونة (Object) :

وهو عبارة عن حزمة برمجية تتكون من البيانات بالإضافة للبرامج الفرعية التي تستخدم لمعالجة البيانات الموجودة بالكينونة .

أما تعريف الكينونة من وجهة نظر الواقع هو عبارة عن أي شيء يوجد في الحياة الواقعية ومن الأمثلة على الكينونة هو :

1- التلفاز

2- الديسك (القرص المرن)


لاحظ أنه كل شيء في العالم الحقيقي هو عبارة عن كينونة .

الان سيتم النظر للكينونة من الناحية البرمجية .

- جميع الكينونات تشترك في الخصائص التالية :

1) خاصية الحالة State .

2) خاصية السلوك Behavior .


الحالة ( حالة الكينونة ) :

وتمثل هذه الحالة القيم أو البيانات التي تخزنها وتحتفظ فيها الكينونة حيث تمثل هذه البيانات بالمتغيرات (Variable) وتكون موجودة في المنطقة الداخلية .


السلوك Behaviour :

ويتم تمثيل السلوك بالبرامج الفرعية التي تدعى Method حيث تقوم الكينونة من خلال هذه البرامج الفرعية بالتعامل مع العالم الخارجي وكذلك يستطيع العالم الخارجي التعامل مع الكينونات من خلالها .


لو تم النظر إلى الكينونة رسومياً فتظهر بالشكل التالي :


مقدمة لدورة لغة الجافا JAVA 0




- لاحظ أن حالة الكينونة أو البيانات الموجودة والتابعة للكينونة توجد في منطقة العمق أو النواه .
- أم البرامج الفرعية تحيط بالنواة وبالتالي لايمكن الوصول إلى النواة أو البيانات إلا من خلال هذه البرامج .


ملاحظة : تدعى البرامج الفرعية في لغة الجافا بـ Method .



المفاهيم الرئيسية في اللغات ذات الأهداف الموجهة :-

التغليف Encapsulation

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


فوائد عملية التغليف :

1- حماية البيانات .
2- إخفاء البيانات Inforamtion Hiding

حماية البيانات :

كما ذكرنا سابقاً أن القيام بحماية البيانات يتم من خلال تحديد قواعد التعامل معها حيث يتم تحديد هذه القواعد من خلال البرامج الفرعية التابعة للكينونة .

إخفاء البيانات :

إن عملية إحاطة البيانات بالبرامج الفرعية يؤدي إلى عملية إخفائها عن العالم الخارجي .


الرسائل :

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

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


مكونات الرسائل :

1- اسم الكينونة .
2- اسم البرنامج الفرعي المستخدم لإجراء عملية الاتصال .
3- البراميتر Parameter وتمثل المتغيرات التي يتم إرسالها للبرنامج الفرعي المستخدم في الرسالة حتى يستطيع توفير الاتصال بين الكينونات وتوفير إمكانية التعامل معها .

مثال على الرسائل :

الكود:
objectName.Compute(10,20)

لاحظ أن Object Name هو عبارة عن اسم الكينونة .

- Compute هو عبارة عن البرنامج الذي يوجد بالكينونة ويستخدم لإجراء عملية الجمع .


- 10 , 20 وهي عبارة عن البراميتر التي تستخدمها الكينونة لإجراء عملية الجمع .


اللبنة Class :


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

1- لا ينفذ العمليات التي يتم تعريفها داخله .

2- لا يتم تحميله إلى الذاكرة أي أن المتغيرات الموجودة بداخله لا يتم حجزها في الذاكرة .


كما مر سابقاً أن أي برنامج وفي أي لغة في مرحلة التنفيذ إن المتغيرات التابعة له تحجز أماكن في ذاكرة الجهاز أما المتغيرات التابعة للبرامج من نوع Class لا تقوم بالتعامل مع ذاكرة الجهاز أي أنها عبارة عن تعريفات لا أثر لها في مرحلة التنفيذ .

كيف يتم تفعيل هذه البرامج :

يتم تفعيل البرامج من نوع Class من خلال الكينونات .

الكينونات : هي عبارة عن برامج يتم إنشائها من الـ Class .


كيف يتم إنشاء الكينونات من الـ Class ؟

يتم إنشاء الكينونة من خلال إجراء عملية الاستنساخ أي القيام باستنساخ الـ Class .
إذن الـ Class تقوم بوضع التعريفات للكينونات من حيث المتغيرات والبرامج الفرعية وعندما نريد تفعيلها يتم استنساخها .


بمعنى آخر عندما نريد تفعيل برنامج الـ Class يجب القيام باستنساخ الـ Class أي القيام بإجراء عملية بناء الكينونة وهذا لايتوفر ألا في اللغات ذات الأهداف الموجهة .


- يمكن استنساخ أكثر من كينونة من نفس الـ Class أي يمكن أن يكون هنالك أكثر من برنامج أو كينونة من نفس الـ Class .



- فوائد إستخدام الـ Class :

1- وضع التعريف وإستخدامه عدة مرات .
2- تفعيل البرامج المكتوبة لحظة الحاجة إليها من خلال القيام ببناء الكينونات من Class واحد


جميع الكينونات التي يتم استنساخها من نفس الـ Class لها :

1- نفس البيانات ( أي نفس المتغيرات )
2- نفس البرامج الفرعية ( أي نفس السلوك )



عملية الاستنساخ :

وهي عملية تفعيل شيفرة برامج الجافا الموجودة على شكل Class .

وهنالك تعريف آخر وهو عملية بناء الكينونات في اللغات ذات الأهداف الموجهة .



الميراث Inhertaince :

ويقصد بعملية الميراث قدرة الكينونة على توريث خصائصها وسلوكها إلى كينونات أخرى .

إليك المثال التالي لنفرض أن هنالك كينونة أشخاص Person وتحتوي على البيانات التالية :

- الاسم - العنوان - تاريخ الميلاد

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

1- الاسم
2- العنوان
3- تاريخ الميلاد
4- رقم الطالب
5- العلامة



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


مقدمة لدورة لغة الجافا JAVA 5



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



مقدمة لدورة لغة الجافا JAVA 6


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






- لغة الجافا :-

هي من إنتاج شركة Sun Microsystems في عام 1991 .



- تاريخ لغة الجافا :-


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

ثم تم تطويرها وإصدار نسخة مطورة في عام 1995 من اجل ايجاد لغة تدعم تطبيقات الإنترنت ونظم التشغيل وفي الفترة الأولى سمية بـ Java hot وبعد ذلك تم تسميتها باسم Java نسبة إلى نوع من بذور القهوة وتم اعتماد هذا الاسم .

وتعتبر لغة جافا من اشهر واقوى اللغات البرمجية في العالم .

معظم التطبيقات التي تحتاج إلى سرية تبرمج في لغة جافا لانها تعتمد على :
( OOP ( Object - Oriented Programing
أي انها في هذه الحالة اصبحت البرمجة توازي العالم الحقيقي Real World







مقدمة لدورة لغة الجافا JAVA Logo_scurvejava


صورة لشعار الجافا الذي يرمز للقهوة






مقدمة لدورة لغة الجافا JAVA James


جيمس جوزلينج
مخترع لغة الجافا
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://www.opcsy.com
 
مقدمة لدورة لغة الجافا JAVA
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتديات ليدي نانا :: [ ركن الكمبيوتر والإنترنت والجوال ] :: ركن برامج الكمبيوتر والإنترنت
 :: ركن لغات البرمجة
-
انتقل الى: