DroidScript
DroidScript
инструменты для мобильной разработки

Данные и переменные

Базовый курс программирования на Thunkable X 
07.10.2019

Создавать мобильные приложения можно и без знания основ программирования, но их понимание позволит выполнить эту работу проще, качественнее и быстрее, потому что не придётся ждать, когда кто-то сделает видеоурок по нужной теме, покажет рабочий пример или найдёт ошибку в вашем приложении. Более того, полученные из этого курса знания вы сможете использовать не только для создания собильных приложений, но при дальнейшем изучении языков программирования.

Проект с примерами доступен по ссылке.

Если у вас есть некоторый опыт программирования, то приготовьтесь к тому, что некоторые известные и общепринятые понятия могут иметь иной смысл в среде разработки Thunkable X, что связано с желанием разработчиков огородить пользователей от сложных на их взгляд понятий текстового программирования. С одной стороны это упрощает разработку мобильных приложений, а с другой затрудняет её, так как создание приложений основывается не на знаниях основ программирования, а на примерах соединения блоков из документации, видеоуроков и др. В результате и через один месяц, и через один год блоки на экране будут восприниматься в виде пазла, в котором путём перебора происходит поиск нужных для его правильной работы блоков.

В любом приложении, которое предназначено для решения практических задач, происходит работа с данными. Для доступа к значениям данных используются переменные, которые можно воспринимать как коробку с надписью, в которую можно что-то положить, а затем достать из неё. Основное преимущество переменных состоит в том, что их значение можно получить в разных местах программы, что сокращает вероятность появления ошибок. Представьте, что в проекте для работы с графикой нужно 50 раз использовать значение какой-нибудь константы. Для этого создали 50 числовых блоков со значением 3,14. После тестирования выяснилось, что нужно увеличить точность константы - 3,1415. Для этого в Thunkаble X придётся вручную исправить значение во всех 50 блоках и можно легко пропустить какой-нибудь блок, что может привести к ошибке вычислений. В случае использования переменной внести изменения нужно будет всего в один блок – в блок, присоединённый к этой переменной. По этой причине старайтесь как можно реже использовать литералы (фиксированные значения, например, 10, false, ”возраст”), заменяя их на блоки переменных. Например, для хранения литералов можно создать данные в формате JSON, которые затем загрузить в приложение и работать с ними при помощи переменных. Это особенно актуально в том случае, если вы собираетесь сделать интерфейс приложения на нескольких языках.

Без переменных не обойтись и в случае необходимости хранения конфиденциальной информации и паролей. Если в общедоступном проекте для этого будет использоваться текстовой блок с незашифрованным текстом, то любой пользователь сможет увидеть эту информацию.

Переменные лежат в основе любого приложения, имеющего практическую ценность для пользователей, и очень важно научится правильно их использовать.

Переменные

Название ”переменная” означает то, что её содержимое может меняться. Сначала в переменную можно записать число 10, затем 20 или даже строку “двадцать”. Операция записи значения в переменную называется присваиванием. Присваивание нового значения переменной приводит к потере (перезаписи) текущего её значения. Этим она отличается от коробки, в которую можно положить несколько предметов без необходимости что-то вытаскивать из неё.

Для записи значения в переменную её вначале нужно создать, перетащив требуемый блок переменной из категории палитры Variables на экран.

Блоки для рабоы с переменными

Для записи значения в переменную к ней присоединяют другой блок справа. Для получения значения переменной её блок присоединяют к другим блокам также с правой стороны.

Любая переменная имеет имя, при помощи которого происходит доступ к ней. Без имени будет непонятно, в какую переменную нужно сохранить данные или из какой переменной требуется получить данные.
Во всех блоках переменных на рисунке указано имя по умолчанию - name. Если переменная с именем name уже существует в проекте, то для соблюдения уникальности имён к ним будет добавлен порядковый номер - name1 и так далее.

Помимо указанных на рисунке блоков в Thunkable X есть и другие блоки для работы с переменными. Мы их рассмотрим после изучения фундаментального понятия типа переменной.

В отличие от текстового программирования, где под типом переменной понимают множество значений, которая она может принимать, в документации Thunkable X под типом переменной понимается область действия глобальной переменной, что вносит путаницу. В Thunkable X используется динамическая типизация переменных, в рамках которой переменные могут принимать значения разных типов данных (сначала в неё можно записать число, затем строку, а после объект). Соответственно, под типом переменной в Thunkable X понимается то, что более точно можно определить в качестве класса памяти (или типа хранилища) глобальной переменной – места, где хранится значение глобальной переменной (в оперативной памяти устройства, в  постоянной памяти устройства или в облачной базе данных Firebase). Чтобы окончательно не запутаться предлагаю при чтении официальной документации под типом переменной понимать тип блока.

Для работы с переменными используются следующие блоки:

  • app
  • stored
  • cloud
  • функции
  • локальные

Выбор типа блока переменной app, stored или cloud производится из выпадающего списка блока инициализации переменной.

Выбор типа глобальной переменной

Базовый курс программирования на Thunkable X 
© 2016-2018 Александр Страшко