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

المتغير المحلي هو نوع من المتغيرات. يتم الإعلان عنها داخل الوظيفة ، ويتراوح عمرها من تنفيذها إلى إنهائها.
كما أن نطاقها محدود أيضًا ضمن الوظيفة التي تم الإعلان عنها. يمكنه تخزين "القيمة المهملة" إذا لم يتم تهيئتها.
من ناحية أخرى ، المتغير العام هو أيضًا نوع من المتغيرات. يتميز بإعلانه خارج الوظيفة.
يتم إنشاؤه حتى قبل بدء تنفيذ البرنامج؛ ومع ذلك، فإنه ينتهي مع إنهاء البرنامج. إذا لم تتم تهيئته، فسيتم تخزين الصفر كافتراضي.
جدول المقارنة
معلمات المقارنة | المتغيرات المحلية | المتغيرات العالمية |
---|---|---|
تبادل البيانات | هذا مستحيل هنا ، حيث يمكن لوظيفة واحدة فقط الوصول إلى البيانات. | نظرًا لأنه يمكن الوصول إلى وظائف متعددة ، فإن هذه الميزة ممكنة |
معامل | يعد تمرير المعلمات للوصول إلى القيمة في غاية الأهمية | لا يعد تمرير المعلمات ضرورة قصوى حيث يمكن الوصول إلى القيمة في جميع أنحاء البرنامج. |
التعديلات | إذا تم تعديل القيمة في إحدى الوظائف ، فلن تنعكس هذه التعديلات في الوظائف الأخرى. | إذا تم تعديل القيمة في إحدى الوظائف ، فعندئذٍ تنعكس هذه التعديلات في البرنامج بأكمله |
إمكانية الوصول | يمكن الوصول إلى هذا من خلال البيانات الواردة داخل وظيفة. | يمكن الوصول إلى هذا من خلال أي بيان موجود في البرنامج. |
الخزائن | يتم تخزين هذا في مكان غير محدد ما لم يتم تحديده. | يتم تخزين هذا في مكان محدد. |
ما هي المتغيرات المحلية؟
هذا نوع من المتغيرات. وتتمثل ميزاته في أنه تم الإعلان عنه داخل وظيفة معينة أو داخلها ، ولا يمكن الوصول إلى قيمتها إلا من خلال مثل هذا البيان الذي تم دمجه في الوظيفة.
تبدأ مدة صلاحيته عندما يبدأ تنفيذ البرنامج وينتهي بإنهائه.
جانب آخر هو أن نطاقها محدود أيضًا داخل الوظيفة التي تم الإعلان عنها. يمكنه تخزين "القيمة المهملة" إذا لم يتم تهيئتها.
لهذا ، لا يمكن مشاركة البيانات ، وذلك لأنه لا يمكن الوصول إلى البيانات إلا من خلال وظيفة واحدة. كما أن تمرير المعلمات للوصول إلى القيمة أمر في غاية الأهمية.
هناك عامل آخر يجب ملاحظته وهو أنه إذا تم تعديل القيمة في إحدى الوظائف، فإن هذه التعديلات لا تنعكس في الوظائف الأخرى.
يمكن الوصول إلى هذا من خلال البيانات الواردة داخل وظيفة.
لها بعض المزايا ، مثل ضمان بقاء القيم سليمة حتى عند تشغيل المهمة. نظرًا لأن كل مهمة تنشئ متغيرها المحلي ، ستظل النتائج قابلة للتنبؤ.
يتم حذفها مع استكمال أي وظيفة ، وبالتالي تحرير مساحة الذاكرة المشغولة سابقًا.
ما هي المتغيرات العالمية؟
هذا أيضًا نوع من المتغيرات. يتميز بإعلانه خارج الوظيفة. يتم إنشاؤه حتى قبل بدء تنفيذ البرنامج ؛ ومع ذلك ، فإنه ينتهي بإنهاء البرنامج.
إذا كان غير مهيأ ، فإنه يخزن الصفر كإعداد افتراضي. مشاركة البيانات ممكنة هنا لأن وظائف متعددة يمكنها الوصول إليها. هذه الميزة ممكنة.
إن تمرير المعلمات ليس في غاية الضرورة حيث يمكن الوصول إلى القيمة بالكامل بحكم المتغيرات التي يتم الإعلان عنها خارج الوظائف.
إذا تم تعديل القيمة في إحدى الوظائف ، فإن هذه التعديلات تنعكس في جميع أنحاء البرنامج. يمكن الوصول إلى هذا من خلال أي بيان موجود في البرنامج.
له مزايا معينة ، مثل أنه يمكن الوصول إليه من جميع وظائف البرنامج. إنه محوري في تخزين "الثوابت" ويساعد في الحفاظ على الاتساق.
يكون هذا مفيدًا للغاية عندما تصل وظائف متعددة إلى نفس البيانات. عيوبه هي أن العديد من المتغيرات تبقى في الذاكرة حتى تنفيذ البرنامج ، والتي بدورها يمكن أن تؤدي إلى مشكلة "نفاد الذاكرة".
علاوة على ذلك ، قد تكون النتائج في بعض الأحيان غير موثوقة وغير متوقعة حيث يمكن لأي وظيفة تغيير البيانات أو تغييرها.
الاختلافات الرئيسية بين المتغيرات المحلية والعالمية
- بينما اكتسبت المتغيرات المحلية اسمها بناءً على كيفية أدائها ، أي أنها وظائف داخلية ، اكتسبت المتغيرات العالمية اسمها أيضًا من حقيقة أنها وظائف خارجية.
- تبدأ حياة المتغير للمتغيرات المحلية مع تنفيذ البرنامج وتنتهي بإنهائه. في المقابل ، تبدأ حياة المتغير في المتغير العالمي حتى قبل تنفيذ البرنامج. ومع ذلك ، فإنه ينتهي بإنهائه.
- المتغيرات المحلية لها تخزينها في مكدسات غير محددة إذا لم يتم تحديدها. من ناحية أخرى ، تخزين المتغيرات العالمية في موقع ثابت.
- عندما لا يكون للنتائج الناتجة في المتغيرات المحلية مجال للتغيير ، يمكن أن تكون النتائج غير موثوقة وغير متوقعة حيث يمكن تغيير البيانات أو تغييرها بواسطة أي وظيفة في حالة المتغيرات العالمية.
- في حين أن مشاركة البيانات لا يمكن أن تكون ممكنة في حالة المتغيرات المحلية ، فإن الأمر عكس ذلك تمامًا في حالة المتغيرات العالمية.