الدرس(5) المتغيرات (Variables)

رقم الدرس 5
آخر تحديث 2025/07/14
تقدم القراءة

الدرس الخامس: صناديق الذاكرة السحرية


ما هو الفرق الجوهري بين آلة حاسبة بسيطة وتطبيق يغير العالم مثل خرائط جوجل؟ كلمة واحدة: الذاكرة. ليست ذاكرة التخزين الدائمة، بل الذاكرة الحية والمتغيرة. ماذا لو أخبرتك أن أقوى تعويذة في كتاب الساحر المبرمج ليست خوارزمية معقدة، بل أمر بسيط لإنشاء “صندوق سحري” في عقل الكمبيوتر؟ صندوق يمكنك وضع ملصق عليه، وتخزين أي شيء فيه، وتغيير محتوياته حسب رغبتك. هذا هو الواقع العملي لـ “المتغيرات”. يراها الكثيرون كحاويات مملة، لكن الحقيقة هي أنها القلب النابض لكل برنامج.

ماذا ستتقن في هذا الدرس؟


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

الفصل الأول: العالم بدون ذاكرة
1

لماذا البرامج الثابتة لا قيمة لها؟


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

المتغير (Variable)


هو موقع محجوز في ذاكرة الكمبيوتر (RAM) له اسم فريد. يمكنك التفكير فيه كـ “صندوق” أو “حاوية” يمكنك استخدامها لتخزين قيمة معينة (رقم، نص، إلخ). سُمي متغيراً لأن القيمة الموجودة بداخله يمكن أن تتغير.


الفصل الثاني: صناعة الصندوق السحري
2

الإعلان والإسناد: خطوتان نحو القوة


لإنشاء متغير واستخدامه، هناك عمليتان أساسيتان:
1. الإعلان (Declaration): هذه هي عملية “صناعة الصندوق ووضع ملصق عليه”. أنت تخبر جافا بنوع البيانات التي سيحتويها الصندوق، وتعطيه اسماً فريداً.
2. الإسناد (Assignment): هذه هي عملية “ملء الصندوق بالقيمة”. أنت تأخذ قيمة وتضعها داخل الصندوق الذي قمت بإنشائه.
جرب بنفسك في المحرر التالي! انقر على زر التشغيل لرؤية النتيجة.

اضغط على "تشغيل" لعرض النتيجة هنا.

رسائل النظام ستظهر هنا.

جاهز
السطر 1, العمود 1

الاختصار الذكي


يمكنك دمج خطوتي الإعلان والإسناد في سطر واحد لتوفير الوقت. هذا هو الشكل الأكثر شيوعاً.
String playerName = “Ryu”;


الفصل الثالث: فن التغيير
3

لماذا يطلق عليه اسم 'متغير'؟


قوة المتغيرات الحقيقية تظهر عندما نقوم بتغيير قيمتها. بمجرد إنشاء الصندوق، يمكنك تغيير محتواه في أي وقت. شاهد كيف تتغير قيمة score في المثال التالي.

اضغط على "تشغيل" لعرض النتيجة هنا.

رسائل النظام ستظهر هنا.

جاهز
السطر 1, العمود 1

الذاكرة قصيرة المدى!


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


الفصل الرابع: الملصقات الواضحة (فن التسمية)
4

كيف تجعل كودك مفهوماً


تخيل ورشة عمل مليئة بصناديق تحمل ملصقات مثل “ص1” و “ص2”. ستكون فوضى عارمة! اختيار أسماء واضحة للمتغيرات هو أحد أهم المهارات التي تميز المبرمج المحترف.
قواعد التسمية في جافا:
يمكن أن تحتوي الأسماء على أحرف، أرقام، شرطة سفلية (_)، وعلامة الدولار ($).
يجب أن تبدأ بحرف (يفضل) أو _ أو $. لا يمكن أن تبدأ برقم.
الأسماء حساسة لحالة الأحرف (myScore يختلف عن myscore).
لا يمكن استخدام الكلمات المحجوزة في جافا.
الكلمات المحجوزة (Reserved Keywords):
هذه هي كلمات خاصة لها معنى محدد في لغة جافا ولا يمكنك استخدامها كأسماء للمتغيرات أو الدوال أو الكلاسات. إنها الأدوات الأساسية في “صندوق أدوات” اللغة.

قائمة الكلمات المحجوزة (للمعرفة فقط)


لا تحتاج لحفظ هذه القائمة، فمحرر الكود مثل IntelliJ IDEA سيلونها بلون مختلف ويمنعك من استخدامها. لكن من الجيد أن تكون على دراية بها.
abstract, assert, boolean, break, byte, case, catch, char, class, const, continue, default, do, double, else, enum, extends, final, finally, float, for, goto, if, implements, import, instanceof, int, interface, long, native, new, package, private, protected, public, return, short, static, strictfp, super, switch, synchronized, this, throw, throws, transient, try, void, volatile, while.

التقليد المتبع (Convention):
في جافا، نستخدم أسلوب جملة الجمل (camelCase) لتسمية المتغيرات.
تبدأ الكلمة الأولى بحرف صغير.
تبدأ كل كلمة لاحقة بحرف كبير.
أمثلة جيدة: playerScore, userName, numberOfLives.
أمثلة سيئة: PlayerScore, user_name, numofliv, int (كلمة محجوزة).

أي من الخيارات التالية هو اسم متغير غير صالح (Invalid) في لغة جافا؟







خلاصة رحلة اليوم


لقد أتقنت اليوم مفهوم المتغيرات، القلب النابض للبرمجة الديناميكية. أنت الآن لا ترى int score = 0; كسطر كود عادي، بل كعملية سحرية: إنشاء صندوق ذاكرة، وضع ملصق “score” عليه، وتخزين الرقم 0 بداخله. لقد تعلمت كيف تملأ هذه الصناديق، وكيف تغير محتوياتها، والأهم من ذلك، كيف تسميها بطريقة احترافية وتتجنب الكلمات المحجوزة.

أنواع الصناديق المختلفة


لقد تعلمنا كيفية إنشاء “صناديق” لتخزين البيانات، لكننا لم نتعمق في أنواعها. هل الصندوق الذي يخزن نصاً هو نفسه الذي يخزن رقماً صحيحاً أو رقماً عشرياً؟ بالطبع لا. في الدرس القادم، سنتعمق في أنواع البيانات الأساسية (Primitive Data Types)، حيث سنتعلم عن الأنواع المختلفة للصناديق المتاحة في جافا وكيفية اختيار الصندوق المناسب للمهمة المناسبة.

🔐 سجل دخولك لحفظ التقدم

سجل دخولك لحفظ تقدمك والحصول على شهادة إتمام

تسجيل الدخول