Что означает семантика значений
Каждая переменная владеет собственным значением.
«Что означает семантика значений» — бесплатный урок Mojo Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Mojo Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Mojo Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Two Ways to Think About Data
When you copy a value into a new variable, does each one stand alone, or do they secretly share? Value semantics answers that. 🤔
Each Variable Owns Its Value
Under value semantics, every variable holds its very own copy of the data. No two names quietly point at the same thing.
var a = 5
var b = aA Copy, Not a Link
Assigning b = a hands b a fresh copy. From that moment on, a and b live independent lives.
var a = 5
var b = a
print(a, b)Changing One Leaves the Other
Because b owns its own copy, updating b never touches a. The original value stays exactly as you left it.
var a = 5
var b = a
b = 99The Mental Model: Boxes
Picture each variable as its own box. Copying pours the contents into a second box, not a shortcut to the first.
Numbers Behave This Way
Simple types like Int copy by value naturally. Pass x around and each spot gets its own number to work with.
var x = 10
var y = x
y = 20Mojo Extends This to Your Types
Mojo applies value semantics broadly, even to structs you write. Copying a struct copies all of its fields too.
Why It Feels Predictable
With value semantics you read code locally: a variable changes only when you change it, never as a side effect elsewhere. ✅
Contrast With Sharing
The opposite is reference behavior, where two names point at one object. Mojo prefers values to avoid that surprise by default.
Independence Is the Big Idea
The heart of value semantics is independence: copies are truly separate, so edits stay contained where you make them.
var price = 100
var saved = price
price = 80It Powers Safe, Fast Code
Independent values let Mojo reason about your program tightly, which helps it stay both safe and fast.
Quick Check
You write var b = a, then change b. What happens to a under value semantics?
Recap
With value semantics, every variable owns an independent copy. Changing one never ripples into another, which keeps code predictable. 🎯
Часто задаваемые вопросы
Урок «Что означает семантика значений» бесплатный?
Да — полный текст урока «Что означает семантика значений» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Mojo Academy, подпишись на CoddyKit PRO. Курс Mojo Academy содержит 4 уроков всего.
Чему я научусь в уроке «Что означает семантика значений»?
Каждая переменная владеет собственным значением. Ты практикуешь Mojo Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Mojo Academy?
Предыдущий опыт не требуется. Mojo Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Что означает семантика значений»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Mojo Academy?
Да. Каждый урок Mojo Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Что означает семантика значений
- Копии и общее состояние
- Безопасное поведение Mojo по умолчанию
- Первый взгляд на мутацию