Dart для чайников. Урок №1
Присаживайтесь, юные дарования, сегодня я расскажу вам что такое сила. Когда одним движением извилин получается сделать то, на что другим понадобится многочасовой монотонный труд. Владеющий силой программирования способен создать себе помощника почти для любого труда, и отдыхать пока помощник работает.
Для желающих освоить эту магию и написан данный труд. Начинающим путь программиста важно понять, что любая программа это последовательность изменения данных. Данные в языках программирования, которые можно изменять, называются переменными, а сами действия функциями, примитивные действия, такие как сложение, вычитание, умножение и так далее, называются операциями.
Чтобы работать с переменными их надо сначала объявить. Вот так будет выглядеть объявление в Dart:
var peremennaya;
Здесь
var – зарезервированное слово, означающее, что следующее слово будет именем новой переменной,
peremennaya – имя переменной, которое мы будем использовать, оно может состоять из латинских букв и символа подчеркивания, регистр имеет значение, т.е. perem и Perem это две разные переменные,
; — знак означающий конец строки кода.
После объявления переменной ей надо задать значение, эта операция называется присвоением. И выглядит она вот так:
peremennaya = 1;
Здесь
peremennaya – это имя одной из ранее объявленных нами переменных
= — знак, перед которым стоит одна и только одна переменная, которой мы хотим задать значение, а после него идёт значение, которое мы хотим дать.
Давайте попробуем написать программу, которая будет складывать два значения.
var yablokiPeti;
yablokiPeti = 8;
var yablokiVasi;
yablokiVasi = 9;
var vsegoYablok;
vsegoYablok = yablokiPeti + yablokiVasi;
Заметьте, что после знака "=" идёт целое выражение, а не просто значение, перед тем как присвоить значение переменной vsegoYablok, будет вычислено выражение справа от знака "=" и до знака ";", в нашем случае будет сделано следующее:
yablokiPeti заменится на 8,
yablokiVasi заменится на 9,
затем 8 + 9 будет вычислено,
и полученный результат 17 будет присвоен переменной vsegoYablok.
Мы могли бы записать эту программу иначе:
var vsegoYablok = 8 + 9;
Результат был бы тот же. Такие числа, программисты называют магическими, они взялись неизвестно откуда и неизвестно что означают, это считается плохой практикой. Вы же всегда должны давать осмысленные имена значениям. И заметьте одну хитрость, здесь объявление переменной идёт в одной строке с заданием ей значения, это может быть и удобно и красиво.
Помимо чисел нам понадобятся строки, другими словами, текст. Строки записываются так:
"Всё, что внутри двойных кавычек, является строкой"
Эту строку мы можем присвоить переменной.
var stroka;
stroka = "Привет, это строка";
Строки тоже можно складывать, но нельзя вычитать, делить или умножать.
var nachalo = "Начало ";
var konec = "и конец";
var celaya = nachalo + konec;
После того как эта программа сработает, celaya будет содержать строку «Начало и конец».
Теперь давайте воспользуемся функцией и напечатаем что-то в консоль.
var privet = "Привет консоль";
print(privet);
Здесь
print – имя функции, которую мы вызываем, именно эта функция описана создателями языка Dart, она уже создана и нам надо только ею пользоваться, нужно помнить только одно, эта функция работает только если ей передать переменную, значение которой строка, чтобы напечатать число, его надо сначала превратить в строку,
( — знак после которого через запятую перечислены переменные, которые мы отдаём в функцию для работы, эти переменные называются аргументами функции,
) — знак означающий конец списка переменных.
Следующим шагом мы опробуем на практике полученные знания. Для этого перейдите на сайт: dartpad.dartlang.org
и удалите весь код, что в левой части экрана.
Теперь введите туда следующие строки:
main()
{
}
Таким образом объявляется функция, это такие сгруппированные по смыслу действия.
main – это имя объявляемой функции, в данном случае это особое имя функции, оно говорит что именно с этой функции будет начинаться работа программы,
() — внутри скобок аргументы функции, в данном случае их нет,
{} — внутри фигурных скобок находится тело функции, это то место где описаны все действия, которые производит эта функция, ни одно действие не может быть совершено вне функции(за фигурными скобками), за фигурными скобками могут быть только объявления переменных и функций.
Можно нажать кнопку «Run», программа будет выполнена, но она ничего не делает.
Давайте заставим программу что-то делать:
main()
{
var yablokiPeti = 7;
var yablokiVasi = 5;
var vsegoYablok = yablokiPeti + yablokiVasi;
}
Нажимаем Run и ничего не происходит, на самом деле программа работает и считает сколько всего яблок, но мы этого не видим. Исправим это:
main()
{
var yablokiPeti = 7;
var yablokiVasi = 5;
var vsegoYablok = yablokiPeti + yablokiVasi;
var vsegoYablokStroka = vsegoYablok.toString();
print(vsegoYablokStroka);
}
Жмём Run и справа в консоли появляется число 12.
Заметьте, мы только что, перед тем как напечатать число, превратили его в строку. Поставив точку после переменной, перед точкой не должно быть никаких пробелов и других знаков, кроме имени самой переменной, мы получили доступ к тем функциям, которые относятся именно к этой переменной, все они написаны создателями Dart и нам остаётся только пользоваться ими. toString это имя функции, которую мы вызвали, а пустые скобки оставили потому, что этой функции не нужны аргументы.
Уже лучше, но давайте сделаем так, чтобы выведенное число имело хоть какой-то смысл для тех, кто не знает кода нашей программы.
main()
{
var yablokiPeti = 7;
var yablokiVasi = 5;
var vsegoYablok = yablokiPeti + yablokiVasi;
var strokaDlyaPechati = "У Пети " + yablokiPeti.toString() + " яблок, у Васи " + yablokiVasi.toString() + " яблок, а всего у них " + vsegoYablok.toString() + " яблок";
print(strokaDlyaPechati);
}
Заметьте, что числовые переменные надо превращать в строки перед тем как складывать со строками. На этом хотелось бы закончить первый урок.
Да пребудет с вами сила.