0Pricing
Swift Academy · درس

let مقابل var: الثوابت والمتغيرات

افهم عدم القابلية للتغيير مع let والقابلية للتغيير مع var في Swift

let مقابل var: الثوابت والمتغيرات درس مجاني في Swift Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Swift Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Swift Academy 4 دروس في المجموع.

مرحبًا

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

تعريف ثابت باستخدام let

استخدم `let` لتعريف ثابت. بعد إسناد قيمة إليه، لا تتغير قيمته أبدًا: ```swift let appName = "CoddyKit" let maxScore = 100 ``` يفرض المترجم هذه القاعدة — وستؤدي محاولة إسناد قيمة جديدة إليه إلى خطأ في التجميع.

تعريف متغير باستخدام var

استخدم `var` لتعريف متغير يمكن تحديث قيمته: ```swift var score = 0 score = 42 score += 10 ``` تُعد المتغيرات مثالية للحالة التي تتغير بمرور الوقت.

لماذا نفضّل let؟

توصي Swift باستخدام `let` افتراضيًا، والانتقال إلى `var` فقط عند الحاجة إلى التغيير. يمنع ذلك التغييرات غير المقصودة ويساعد المترجم على تحسين الشفرة.

قواعد التسمية واصطلاحاتها

تستخدم معرّفات Swift اصطلاح *camelCase*: ```swift let playerName = "Alice" var currentLevel = 1 ``` الأسماء حساسة لحالة الأحرف: فـ`score` و`Score` معرّفان مختلفان.

إعادة إسناد let — خطأ في التجميع

لن تُترجم هذه الشفرة: ```swift let pi = 3.14159 pi = 3.0 // ❌ cannot assign to value: 'pi' is a 'let' constant ``` تكتشف Swift هذا الخطأ وقت الترجمة، قبل تشغيل التطبيق.

تعريفات متعددة في سطر واحد

يمكنكم تعريف عدة ثوابت أو متغيرات دفعة واحدة: ```swift let x = 5, y = 10, z = 15 var a = 1, b = 2 ``` اجعلوا ذلك موجزًا؛ وفضّلوا الأسطر المنفصلة للوضوح عندما تكون الأسماء أو القيم معقدة.

التهيئة المؤجلة

لا تحتاج قيمة `let` الثابتة إلى قيمة فورية — يمكنكم إسنادها مرة واحدة لاحقًا: ```swift let finalScore: Int if condition { finalScore = 100 } else { finalScore = 0 } ``` يضمن المترجم إسناد قيمة إليها مرة واحدة بالضبط قبل استخدامها.

طباعة الثوابت والمتغيرات

استخدم `print()` واستيفاء السلاسل النصية لعرض القيم: ```swift let name = "Swift" var version = 5 print("Language: \(name), version: \(version)") ``` تُضمّن صيغة `\(...)` أي تعبير مباشرةً داخل سلسلة نصية.

مثال عملي: حالة اللعبة

نمط عملي: ```swift let playerName = "Alice" // won't change var lives = 3 // changes as game progresses var score = 0 lives -= 1 score += 250 ``` إن استخدام `let` حيثما أمكن يوضّح قصدكم للقرّاء في المستقبل.

مراجعة سريعة

ما الكلمة المفتاحية التي تعرّف قيمة **لا يمكن** تغييرها بعد إسنادها؟

مراجعة

أهم النقاط: • `let` → ثابت، غير قابل للتغيير بعد إسناد القيمة • `var` → متغير، يمكن إعادة إسناد قيمته • فضّلوا `let`، وانتقلوا إلى `var` فقط عندما يكون التغيير مطلوبًا فعلًا • يستخدم كلاهما تسمية camelCase ويمكن تهيئتهما لاحقًا (مع تهيئة let مرة واحدة بالضبط) التالي: كيف تستنتج Swift الأنواع تلقائيًا.

الأسئلة الشائعة

هل درس «let مقابل var: الثوابت والمتغيرات» مجاني؟

نعم — نص درس «let مقابل var: الثوابت والمتغيرات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Swift Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Swift Academy 4 دروس في المجموع.

ماذا ستتعلم في «let مقابل var: الثوابت والمتغيرات»؟

افهم عدم القابلية للتغيير مع let والقابلية للتغيير مع var في Swift تتمرن على Swift Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Swift Academy؟

لا تُشترط خبرة سابقة. Swift Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.

كم من الوقت يستغرق درس «let مقابل var: الثوابت والمتغيرات»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Swift Academy هذا؟

نعم. كل درس في Swift Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. let مقابل var: الثوابت والمتغيرات
  2. استنتاج الأنواع والأنواع الصريحة
  3. الأعداد والقيم المنطقية والمحارف
  4. أساسيات String والاستيفاء
← العودة إلى Swift Academy