Копии и общее состояние
Когда изменения распространяются, а когда нет.
«Копии и общее состояние» — бесплатный урок 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 включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Что означает семантика значений
- Копии и общее состояние
- Безопасное поведение Mojo по умолчанию
- Первый взгляд на мутацию