Продолжаю изучать Android и его устройство с точки зрения программирования. Базовым понятием ОС Android является Activity (активность) – нечто среднее между формой и процессом в классическом понимании оконных ОС вроде Windows. В любом случае это – специальный класс, обеспечивающий взаимодействие пользователя и мобильного устройства с помощью графического интерфейса.

При изучении программирования мобильных приложений большое внимание уделяется событийному подходу в разработке ПО. И, разумеется, нужно понимать, что такое объектно-ориентированное программирование (получить базовое представление об этих понятиях можно из моей статьи “Эволюция абстракций” ).

Жизненный цикл

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

Особенностью мобильных приложений является особая забота к используемым ими ресурсам, потому как в случае запуска другой активности, текущая активность приостанавливается (Paused), а в некоторых случаях может быть и вовсе остановлена (Stopped) и даже полностью выгружена из памяти (Destroyed) операционной системой в случае нехватки этих самых ресурсов.

Двигаемся не спеша

Особенностью курсов от N.E.C.O. является низкая скорость раскрытия информации. С одной стороны это хорошо для начинающих, а с другой стороны плохо, если вы уже хоть что-то начали понимать. Но, кроме понимания концепций программирования, нужно освоить среду разработки Android Studio, и тут форсировать изучение очень сложно, так как для каждой фишки потребуется практика. И вот что я для себя отметил.

  • В языке KOTLIN символом разделения операторов является перевод строки (а не точка с запятой, как Pascal). Также различаются верхний и нижний регистр при написании команд или имен объектов. Это потребует от вас большей внимательности!
  • Благодаря тому, что почти все хранится в виде текста (программный код и внешний вид формы), всегда можно откатиться к более ранней версии созданного. Для этого в контекстном меню выберите пункт “Local History” – откроется список редакций с возможностью поиска и сравнения отличий!
  • Если текст нужно заключить в кавычки, выделите его и нажмите SHIFT + “
  • Редактор исходных текстов обладает мощным механизмом автозавершения – начните набирать нужную команду и он тут же подскажет вам, что нужно написать дальше.
  • Сочетание клавиш CTRL + O отобразит список всех доступных методов класса, которые вы редактируете.

Отладка

Наверное, это правильно – сразу научить разработчика пользоваться мощнейшим инструментом отладки. Ещё и программировать не начали, а пора искать ошибки.

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

Особая любезность редактора Android Studio состоит в том, что если вы используете класс, который вы ещё не добавили в раздел import (а на первых порах вы можете и не знать, в каком модуле находятся нужные вам классы), достаточно набрать его название, поставить на него курсор и нажать Alt + Enter .

Метод Log.d() позволяет выводить во вкладку Logcat текст, помеченный тегом. При этом в Android Studio имеется мощный механизм фильтрации сообщений (по типам, по тегам, по содержимому и т.д.)

Однако

Я был неприятно удивлен, когда мой компьютер с 16 Гб памяти на борту отказался тащить на себе Android Studio и эмулятор мобильного устройства до тех пор, пока я не добавил файл подкачки. Возможно, что за два года, которые прошли с покупки ПК, изменились аппетиты у всех: у браузеров, у операционной системы, у средств разработки… Но до сегодняшнего дня подобных проблем я не наблюдал. И, что самое странное, Android Studio при попытке открыть панель лога просто закрывается, ни слова не говоря о том, что ей не хватило памяти.

Ссылки

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *