Тема:
Базовый синтаксис
Строки
Переменные
Цели:
Твой герой должен выжить.
Убей 3 огров.
Руководство:
Введение:
Объявляйте переменные таким образом:
Python, CoffeScript:
1 |
enemy1 = "Kratt" |
JavaScript:
1 |
var enemy1 = "Kratt"; |
Clojure:
1 |
(def enemy1 "Kratt") |
LUA:
1 |
local enemy1 = "Kratt" |
Когда вы используете кавычки: "Kratt", вы создаёте строку.
Когда вы не используете кавычек: enemy1, то вы ссылаетесь на переменную enemy1.
Обзор:
До сих пор, вы делали только:
- Вызов методов (таких команд как moveRight())
- Использование строк (текста заключённого в кавычки как например «Treg») в качестве аргументов к методам
- Использование while-true циклов для повторения ваших методов снова и снова.
Теперь вы изучете как использовать переменные: ссылки на участки памяти (ячейки), в которых хранится информация. Значение переменных может меняться когда мы сохраняем в них новые данные, вот почему они называются переменными.
Неудобно печатать имена Огров много раз, поэтому на этом уровне используйте три переменные для хранения имён огров. Когда вам нужно атаковать, вы можете использовать переменную ( enemy1), которая представляет сохраненную ранее в ней строку ( "Kratt").
Объявляйте переменные таким образом:
Python, CoffeScript:
1 |
enemy1 = "Kratt" |
JavaScript:
1 |
var enemy1 = "Kratt"; |
Clojure:
1 |
(def enemy1 "Kratt") |
LUA:
1 |
local enemy1 = "Kratt" |
Когда вы не используете кавычек: enemy1, то вы ссылаетесь на переменную enemy1.
Известный враг, прохождение:
Python:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# Ты можешь использовать переменные как именные бейджи. enemy1 = "Kratt" enemy2 = "Gert" enemy3 = "Ursa" self.attack(enemy1) self.attack(enemy1) self.attack(enemy2) self.attack(enemy2) self.attack(enemy3) self.attack(enemy3) |
JavaScript:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// Ты можешь использовать переменные как именные бейджи. var enemy1 = "Kratt"; var enemy2 = "Gert"; var enemy3 = "Ursa"; this.attack(enemy1); this.attack(enemy1); this.attack(enemy2); this.attack(enemy2); this.attack(enemy3); this.attack(enemy3); |
CoffeScript:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# Ты можешь использовать переменные как именные бейджи. enemy1 = "Kratt" enemy2 = "Gert" enemy3 = "Ursa" @attack enemy1 @attack enemy1 @attack enemy2 @attack enemy2 @attack enemy3 @attack enemy3 |
Clojure:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
;; Ты можешь использовать переменные как именные бейджи. (let [enemy1 "Kratt" enemy2 "Gert" enemy3 "Ursa"] (.attack this enemy1) (.attack this enemy1) (.attack this enemy2) (.attack this enemy2) (.attack this enemy3) (.attack this enemy3) ) |
LUA:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
-- Ты можешь использовать переменные как именные бейджи. local enemy1 = "Kratt" local enemy2 = "Gert" local enemy3 = "Ursa" self:attack(enemy1) self:attack(enemy1) self:attack(enemy2) self:attack(enemy2) self:attack(enemy3) self:attack(enemy3) |
Комментарии: