تكتب جافا باللغة العربية و هي لغة برمجة عالية المستوى إبتكرها James Gosling عام 1991 أثناء عمله في مختبرات شركة Sun Microsystems و ذلك لاستخدامها بمثابة العقل المفكر المستخدم لتشغيل الأجهزة الذكية.
عام 1995 تم تطويرها لبناء تطبيقات للويب, السيرفرات, سطح المكتب, الهواتف و الروبوتات.
و هي تعمل على جميع و أهم أنظمة التشغيل مثل Windows, Mac OS, Linux, Unix, Android إلخ.. و تعتبر من أشهر لغات البرمجة على الإطلاق.
عام 1995 تم تطويرها لبناء تطبيقات للويب, السيرفرات, سطح المكتب, الهواتف و الروبوتات.
و هي تعمل على جميع و أهم أنظمة التشغيل مثل Windows, Mac OS, Linux, Unix, Android إلخ.. و تعتبر من أشهر لغات البرمجة على الإطلاق.
❤3👍2
مميزات لغة جافا بالنسبة للمطورين
لها شعبية هائلة و هناك الكثير من المراجع لمن يريد تعلمها.
بسيطة و تعلمها سهل مقارنةً مع غيرها من اللغات.
شبيهة باللغتين C و C++ و لكن التعامل معها أسهل و سلس أكثر.
إذا أنشأت برنامجاً باستخدام لغة جافا فإن البرنامج يعمل على أي نظام في العالم و هذا من أهم ما يدفعك لتعلمها.
لغة جافا مطلوبة جداً في الخارج, إذا كنت تريد دخول سوق العمل فلغة جافا توفر لك الكثير من الفرص.
لها شعبية هائلة و هناك الكثير من المراجع لمن يريد تعلمها.
بسيطة و تعلمها سهل مقارنةً مع غيرها من اللغات.
شبيهة باللغتين C و C++ و لكن التعامل معها أسهل و سلس أكثر.
إذا أنشأت برنامجاً باستخدام لغة جافا فإن البرنامج يعمل على أي نظام في العالم و هذا من أهم ما يدفعك لتعلمها.
لغة جافا مطلوبة جداً في الخارج, إذا كنت تريد دخول سوق العمل فلغة جافا توفر لك الكثير من الفرص.
👍3
مميزات لغة جافا عن باقي لغات البرمجة
مادياً
لن تدفع أي مبلغ لتعمل على لغة جافا, فهي مصدر مفتوح و مجانية و ستبقى مجانية مدى الحياة.
تقنياً
تستطيع البرمجة بها حتى و لو كان حاسوبك ضعيفاً أو قديماً.
البساطة
تعلمها سهل جداً بعد أن تفهم برمجة الكائنات.
العمل بحيادية
يمكن لمترجم لغة جافا تقسيم أوامر البرنامج ليتنفذ على عدة معالجات بشكل متناسق باستخدام نظام JRE.
تعدد المهام
جافا توفر لك تقنية الـ Multithreading و التي تسمح لك بجعل برنامجك قادراً على تنفيذ عدة أوامر مع بعض و بنفس الوقت.
سرعة الترجمة
تتم ترجمة لغة جافا إلى أوامر يفهمها الجهاز بشكل جداً سريع و بدون أن يخزنها و يحاول تحليلها لأن الكائنات فيها تربط مع بعضها بشكل تدريجي مما يجعل الأوامر فيها تتنفذ بسرعة.
معالجة الأخطاء
جافا تعالج الأخطاء بطريقتين, أثناء كتابتك للكود تحاول أن تصلح لك أي أخطاء في كتابة الكود, و أثناء تشغيل الكود تخبرك بأي خطأ منطقي في حال حدوثه و الذي عليك معالجته بنفسك.
ديناميكياً
صممت جافا لتكون أكثر ديناميكية من C و C++. ويمكن لبرامج جافا تحمّل كمية كبيرة من المعلومات وقت التشغيل و التي يمكن استخدامها للتحقق من الكود والتأكد إذا كان المترجم يستطيع أن يصل إلى الكائنات وقت التشغيل.
مادياً
لن تدفع أي مبلغ لتعمل على لغة جافا, فهي مصدر مفتوح و مجانية و ستبقى مجانية مدى الحياة.
تقنياً
تستطيع البرمجة بها حتى و لو كان حاسوبك ضعيفاً أو قديماً.
البساطة
تعلمها سهل جداً بعد أن تفهم برمجة الكائنات.
العمل بحيادية
يمكن لمترجم لغة جافا تقسيم أوامر البرنامج ليتنفذ على عدة معالجات بشكل متناسق باستخدام نظام JRE.
تعدد المهام
جافا توفر لك تقنية الـ Multithreading و التي تسمح لك بجعل برنامجك قادراً على تنفيذ عدة أوامر مع بعض و بنفس الوقت.
سرعة الترجمة
تتم ترجمة لغة جافا إلى أوامر يفهمها الجهاز بشكل جداً سريع و بدون أن يخزنها و يحاول تحليلها لأن الكائنات فيها تربط مع بعضها بشكل تدريجي مما يجعل الأوامر فيها تتنفذ بسرعة.
معالجة الأخطاء
جافا تعالج الأخطاء بطريقتين, أثناء كتابتك للكود تحاول أن تصلح لك أي أخطاء في كتابة الكود, و أثناء تشغيل الكود تخبرك بأي خطأ منطقي في حال حدوثه و الذي عليك معالجته بنفسك.
ديناميكياً
صممت جافا لتكون أكثر ديناميكية من C و C++. ويمكن لبرامج جافا تحمّل كمية كبيرة من المعلومات وقت التشغيل و التي يمكن استخدامها للتحقق من الكود والتأكد إذا كان المترجم يستطيع أن يصل إلى الكائنات وقت التشغيل.
👍2❤1
إذاً الكود الذي تكتبه أنت يسمى Source Code.
حتى يتنفذ هذا الكود, يتم تحويله إلى Byte Code بواسطة مترجم لغة جافا ( javac ) و هذا المترجم يضمن أن الكود الذي كتبته يعمل في لغة جافا.
بعدها يقوم مفسر لغة جافا ( JVM ) بتنفيذ الكود على بشكل يلائم نظام التشغيل الذي يستخدمه المستخدم سواء كان Windows, Linux, MacOS.
حتى يتنفذ هذا الكود, يتم تحويله إلى Byte Code بواسطة مترجم لغة جافا ( javac ) و هذا المترجم يضمن أن الكود الذي كتبته يعمل في لغة جافا.
بعدها يقوم مفسر لغة جافا ( JVM ) بتنفيذ الكود على بشكل يلائم نظام التشغيل الذي يستخدمه المستخدم سواء كان Windows, Linux, MacOS.
👍2❤1
مصطلحات تقنية
Source Code: تعني الكود أو الشفرة المصدرية, و يقال لها أيضاً سورس كود.
Byte Code: كود الجافا الذي تم التأكد من صحته و تجهيزه لمفسر لغة جافا.
javac: إختصار لـ Java Compiler و يسمى مترجم لغة جافا. فعلياً هو برنامج يحول الكود المكتوب بلغة جافا إلى Byte Code.
Interpreter: هو برنامج مهمته تنفيذ الكود حتى يعمل كأي برنامج في حاسوب المستخدم.
JVM: إختصار لـ Java Virtual Machine و هو عبارة عن Interpreter خاص لتشغيل الـ Byte Code الذي أصله في الأساس كود جافا كأي برنامج عادي.
OS: إختصار لـ Operating System و التي تعني نظام التشغيل.
Source Code: تعني الكود أو الشفرة المصدرية, و يقال لها أيضاً سورس كود.
Byte Code: كود الجافا الذي تم التأكد من صحته و تجهيزه لمفسر لغة جافا.
javac: إختصار لـ Java Compiler و يسمى مترجم لغة جافا. فعلياً هو برنامج يحول الكود المكتوب بلغة جافا إلى Byte Code.
Interpreter: هو برنامج مهمته تنفيذ الكود حتى يعمل كأي برنامج في حاسوب المستخدم.
JVM: إختصار لـ Java Virtual Machine و هو عبارة عن Interpreter خاص لتشغيل الـ Byte Code الذي أصله في الأساس كود جافا كأي برنامج عادي.
OS: إختصار لـ Operating System و التي تعني نظام التشغيل.
❤1👍1🔥1
مفهوم الـ JDK و أهميته بالنسبة للغة جافا
كما لاحظت سابقاً, الكود المكتوب بلغة جافا يمر بعدة مراحل حتى يعمل. و السبب الرئيسي في ذلك أن نظام التشغيل ليس مكتوباً بلغة جافا.
من هذا المنطلق, عليك معرفة أنه حتى يتعرف نظام التشغيل الذي تستخدمه على لغة جافا تحتاج تحميل و تنصيب أدوات تطوير جافا ( Java Development Kit ) و التي يقال لها JDK.
الـ JDK بدوره يتضمن أشياء كثيرة جداً مثل:
الكلاسات الجاهزة في جافا.
الشروحات للكلاسات و الدوال الجاهزة التي تظهر لك أثناء كتابتك للكود و التي تسمى javadoc.
مترجم لغة جافا javac.
مشغل لغة جافا ( Java Runtime Environment ) الذي يختصر بـ JRE و الذي بدوره يحتوي على الـ JVM.
خلاصة
بدون الـ JDK لن يستطيع نظام التشغيل التعرف على لغة جافا. و بالتالي لن يستطيع تشغيل أي كود أو حتى برنامج جاهز مكتوب بلغة جافا.
كما لاحظت سابقاً, الكود المكتوب بلغة جافا يمر بعدة مراحل حتى يعمل. و السبب الرئيسي في ذلك أن نظام التشغيل ليس مكتوباً بلغة جافا.
من هذا المنطلق, عليك معرفة أنه حتى يتعرف نظام التشغيل الذي تستخدمه على لغة جافا تحتاج تحميل و تنصيب أدوات تطوير جافا ( Java Development Kit ) و التي يقال لها JDK.
الـ JDK بدوره يتضمن أشياء كثيرة جداً مثل:
الكلاسات الجاهزة في جافا.
الشروحات للكلاسات و الدوال الجاهزة التي تظهر لك أثناء كتابتك للكود و التي تسمى javadoc.
مترجم لغة جافا javac.
مشغل لغة جافا ( Java Runtime Environment ) الذي يختصر بـ JRE و الذي بدوره يحتوي على الـ JVM.
خلاصة
بدون الـ JDK لن يستطيع نظام التشغيل التعرف على لغة جافا. و بالتالي لن يستطيع تشغيل أي كود أو حتى برنامج جاهز مكتوب بلغة جافا.
الشكل العام لأي برنامج مكتوب بلغة جافا
الكلاس الأساسي في المشروع يجب أن يكون شكله كالتالي.
هنا يجب أن تضع الأوامر التي ستتنفذ عند تشغيل البرنامج
}
الكلاس الأساسي في المشروع يجب أن يكون شكله كالتالي.
public class هنا يوضع إسم الكلاس {
public static void main(String[] args) {هنا يجب أن تضع الأوامر التي ستتنفذ عند تشغيل البرنامج
}
👍3
في العادة الكلاس الأساسي في المشروع يتم تسميته Main مع الإشارة إلى أن هذا لا يعني أنك مجبر على تسميته كذلك.
الكود الذي يتنفذ مباشرةً عند تشغيل البرنامج هو الكود الذي نكتبه بداخل حدود الدالة main().
سنتطرق إلى مزيد من التفاصيل في الدرس التالي.
في المثال التالي قمنا بإنشاء برنامج إسمه Main, موجود بداخل مجدل إسمه main, مهمته فقط طباعة الجملة "Hello World!" عند التشغيل.
مثال
سنحصل على النتيجة التالية عند التشغيل.
Hello World!
الكود الذي يتنفذ مباشرةً عند تشغيل البرنامج هو الكود الذي نكتبه بداخل حدود الدالة main().
سنتطرق إلى مزيد من التفاصيل في الدرس التالي.
في المثال التالي قمنا بإنشاء برنامج إسمه Main, موجود بداخل مجدل إسمه main, مهمته فقط طباعة الجملة "Hello World!" عند التشغيل.
مثال
public class Main {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}سنحصل على النتيجة التالية عند التشغيل.
Hello World!
❤4👍1
مثال حول الحلقة do while
في المثال التالي قمنا بتعريف حلقة تطبع جميع الأرقام من 1 إلى 10.
مثال
في المثال التالي قمنا بتعريف حلقة تطبع جميع الأرقام من 1 إلى 10.
مثال
Main.java
public class Main {
public static void main(String[] args) {
// هنا قمنا بتعريف المتغير الذي استخدمناه كعداد في الحلقة
int i=1;
// تظل تنفذ الأوامر الموضوعة فيها طالما أن قيمة العدد لا تزال أصغر أو تساوي 10 while هنا أنشأنا حلقة
do
{
// في كل دورة سيتم طباعة قيمة العداد ثم إضافة 1 عليها
System.out.println( i );
i++;
}
while( i<=10 );
}
}❤5👍3
بناء برنامج بلغة جافا
يمكننا تعريف أي برنامج مكتوب بلغة جافا على أنه مجموعة من الكائنات مرتبطة مع بعضها البعض بشكل منطقي و متسلسل.
هنا رح اعطيك فكرة عامة عن بعض المصطلحات الأساسية في لغة جافا مع الإشارة إلى أنك حتتعرف على كل مصطلح منها بتفصيل في المنشورات الجايه ان شاء الله.
المصطلحات الأساسية في لغة جافا كالتالي:
الكلاس (Class)
الكائن (Object)
الخصائص (Instance variables)
الدوال (Methods)
.
يمكننا تعريف أي برنامج مكتوب بلغة جافا على أنه مجموعة من الكائنات مرتبطة مع بعضها البعض بشكل منطقي و متسلسل.
هنا رح اعطيك فكرة عامة عن بعض المصطلحات الأساسية في لغة جافا مع الإشارة إلى أنك حتتعرف على كل مصطلح منها بتفصيل في المنشورات الجايه ان شاء الله.
المصطلحات الأساسية في لغة جافا كالتالي:
الكلاس (Class)
الكائن (Object)
الخصائص (Instance variables)
الدوال (Methods)
.
👍1
تحبوا نواصل الدروس في الجافا؟
والا نعيد من الأساسيات لتعلم اي لغة برمجية
وبعدين نرجع للجافا ك بداية؟
والا نعيد من الأساسيات لتعلم اي لغة برمجية
وبعدين نرجع للجافا ك بداية؟
Anonymous Poll
76%
نبدأ من الصفر
24%
نواصل مع الدروس الحالية
ثانياً
مفهوم الكائن في الجافا - Object
الكائن عبارة عن نسخة مطابقة لكلاس معين.
بما أن الكائن عبارة عن نسخة من الكلاس, يمكننا القول أنه لا يمكن إنشاء كائن إذا لم يكن هناك كلاس.
إذاً في مفهوم برمجة الكائنات نقوم بإنشاء كلاس معين يسمونه Blue Print أي (النسخة الخام أو النسخة الأصلية) ,
و بعدها ننشئ نسخة أو أكثر من هذا الكلاس و نفعل بها ما نريد بدون أن نغير محتويات الكلاس الأساسي و هكذا نكون حافظنا على كودات الكلاس الأساسي لأننا نعدل على النسخ و ليس عليه مباشرةً.
الفكرة الأساسية في برمجة الكائنات أنك تقوم بتقسيم البرنامج الواحد إلى عدة كلاسات, و كل كلاس يتم برمجته لتنفيذ ناحية معينة في البرنامج.
بعد الإنتهاء من كل أقسام البرنامج الموجودة في عدة كلاسات, نقوم فقط بإنشاء نسخ منهم في المكان الذي نحتاجهم فيه. و بذلك نكون جمعنا كل الكلاسات التي كتبت بشكل منفصل و ربطناهم مع بعضهم و كأننا كتبناهم في كلاس واحد فقط.
.
مفهوم الكائن في الجافا - Object
الكائن عبارة عن نسخة مطابقة لكلاس معين.
بما أن الكائن عبارة عن نسخة من الكلاس, يمكننا القول أنه لا يمكن إنشاء كائن إذا لم يكن هناك كلاس.
إذاً في مفهوم برمجة الكائنات نقوم بإنشاء كلاس معين يسمونه Blue Print أي (النسخة الخام أو النسخة الأصلية) ,
و بعدها ننشئ نسخة أو أكثر من هذا الكلاس و نفعل بها ما نريد بدون أن نغير محتويات الكلاس الأساسي و هكذا نكون حافظنا على كودات الكلاس الأساسي لأننا نعدل على النسخ و ليس عليه مباشرةً.
الفكرة الأساسية في برمجة الكائنات أنك تقوم بتقسيم البرنامج الواحد إلى عدة كلاسات, و كل كلاس يتم برمجته لتنفيذ ناحية معينة في البرنامج.
بعد الإنتهاء من كل أقسام البرنامج الموجودة في عدة كلاسات, نقوم فقط بإنشاء نسخ منهم في المكان الذي نحتاجهم فيه. و بذلك نكون جمعنا كل الكلاسات التي كتبت بشكل منفصل و ربطناهم مع بعضهم و كأننا كتبناهم في كلاس واحد فقط.
.
❤2
كمان تقدر تتخيل انو الكلاس عبارة عن قالب، قالب مثلاُ لصناعة قوارير المياه
يعني انك رح تكون قادر انك تستخدم القالب هذا علشان تسوي من خلاله عدة نسخ
كذلك الكلاس والاوبجكت 👌
يعني انك رح تكون قادر انك تستخدم القالب هذا علشان تسوي من خلاله عدة نسخ
كذلك الكلاس والاوبجكت 👌
مثال بسيط ع الكلاس والاوبجكت ف جافا:
مثلاً مطلوب منك تسوي برنامج لسيارات تويوتا، الشاص والجيب ووو
ف انت مايحتاج تسوي لكل موديل كلاس لحاله
بدلا من كذا، حتسوي كلاس فيه مواصفات السيارات
مثلاً
كلاس يحوي، الموديل وسنة الانتاج، وعدد الكراسي، وكم ماشية، ووارد ايش ووالخ..
وتسوي من هالكلاس عدة كائنات وكل كائن حيكون قادر ياخذ كل مواصفات الكلاس اللي فوق
وفقط هنا انت بتحتاج تضيف القيم له
وبيوضح معانا ف الامثله الجايه ان شاء الله 👌
مثلاً مطلوب منك تسوي برنامج لسيارات تويوتا، الشاص والجيب ووو
ف انت مايحتاج تسوي لكل موديل كلاس لحاله
بدلا من كذا، حتسوي كلاس فيه مواصفات السيارات
مثلاً
كلاس يحوي، الموديل وسنة الانتاج، وعدد الكراسي، وكم ماشية، ووارد ايش ووالخ..
وتسوي من هالكلاس عدة كائنات وكل كائن حيكون قادر ياخذ كل مواصفات الكلاس اللي فوق
وفقط هنا انت بتحتاج تضيف القيم له
وبيوضح معانا ف الامثله الجايه ان شاء الله 👌
❤2