النسخ مقابل الحالة المشتركة
متى تنتشر التغييرات ومتى لا تنتشر
النسخ مقابل الحالة المشتركة درس مجاني في Mojo Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Mojo Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Mojo Academy 4 دروس في المجموع.
بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.
When Do Changes Spread?
Sometimes editing one variable also edits another, and sometimes it does not. The difference is copy versus shared state. 🔍
A Copy Is Self-Contained
When you get a copy, you hold separate data. Editing it cannot reach back and disturb the value you copied from.
var a = 1
var b = a
b = 2Shared State Is One Thing, Two Names
With shared state, two variables point at the same underlying data. A change through one is visible through the other.
The Telltale Sign
Ask: after I edit one variable, did the other one change too? If yes, they shared; if no, you had a copy.
Mojo Copies By Default
For value types, Mojo gives you a copy on assignment. So in everyday code, changes stay nicely contained.
var first = 7
var second = first
second = 8Structs Copy Their Fields
Copy a struct and you copy each field inside it. The new struct is fully independent from the original.
Why Sharing Causes Surprises
Shared state means a distant edit can silently change your value. That spooky action at a distance is a classic source of bugs.
Sharing Has Its Uses
Sharing is not evil; sometimes you want one source of truth. The key is to choose it on purpose, not by accident.
Reading Code With This Lens
When you see an assignment, picture whether it makes a copy or a link. That habit predicts how edits will travel.
var original = 50
var backup = originalA Quick Comparison
Copy: edits stay put. Shared: edits ripple. Mojo's default leans toward copies, so ripples are the exception, not the rule.
Independence You Can Trust
Knowing copies are independent lets you change a value boldly, sure that other parts of your program stay stable. ✅
Quick Check
Two variables point at the same underlying data. You edit one. What do you expect?
Recap
A copy keeps edits contained; shared state lets them ripple. Mojo copies value types by default, so surprises are rare. 🎯
الأسئلة الشائعة
هل درس «النسخ مقابل الحالة المشتركة» مجاني؟
نعم — نص درس «النسخ مقابل الحالة المشتركة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Mojo Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Mojo Academy 4 دروس في المجموع.
ماذا ستتعلم في «النسخ مقابل الحالة المشتركة»؟
متى تنتشر التغييرات ومتى لا تنتشر تتمرن على Mojo Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Mojo Academy؟
لا تُشترط خبرة سابقة. Mojo Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «النسخ مقابل الحالة المشتركة»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Mojo Academy هذا؟
نعم. كل درس في Mojo Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- معنى دلالات القيمة
- النسخ مقابل الحالة المشتركة
- الإعداد الافتراضي الآمن في Mojo
- نظرة أولى على التغيير