Разработка мобильных приложений (syllabus)

Материал из Поле цифровой дидактики



Планируемые результаты обучения (Знать, Уметь, Владеть) Результаты:
  • Понимать
  • как создавать и проектировать мобильные приложения с помощью графического интерфейса.
что такое 603109
Знать
как интегрировать свои приложения с различными внешними сервисами, такими как базы данных, API и другие.
процесс публикации приложений в магазинах приложений, таких как Google Play Store.
Уметь
применять концепции программирования, такие как условия, циклы, переменные и функции для создания мобильных приложений.
использовать различные компоненты, такие как кнопки, текстовые поля, изображения и другие, для создания интерактивных пользовательских интерфейсов.
тестировать свои приложения и исправлять ошибки, используя инструменты отладки.
Содержание разделов курса Содержание
1. Введение в мобильную разработку
  • Разнообразие мобильных образовательных приложений
  • Основы мобильных платформ (Android, iOS)
  • Средства разработки мобильных приложений
2. Основы программирования
  • Переменные, типы данных и операторы
  • Условные операторы и циклы
  • Функции и классы
3. Разработка пользовательского интерфейса
  • Основы дизайна интерфейса
  • Использование различных элементов интерфейса (кнопки, текстовые поля, списки и т.д.)
4. Работа с сетью
  • Основы работы с HTTP-запросами
  • Работа с API
5 Тестирование и отладка
  • Основы тестирования мобильных приложений
  • Использование инструментов для отладки
Развертывание и публикация
  • Подготовка приложения к публикации
Видео запись
Среды и средства, которые поддерживают учебный курс App Inventor, Thunkable, OctoStudio, MediaWiki
Книги, на которых основывается учебный курс App Inventor 2 (book)

webapis-post.png


Введение в мобильную разработку

  • Разнообразие мобильных образовательных приложений
  • Основы мобильных платформ (Android, iOS)
https://gallery.appinventor.mit.edu/s/MGPU_Mobile_Apps/time - Студия
https://snap.berkeley.edu/snap/snap.html#present:Username=patarakin&ProjectName=Cat_Fact

Средства разработки мобильных приложений

 Description
App InventorApp Inventor является бесплатным инструментом для программирования для создания мобильных приложений для Android. Он был разработан Массачусетским технологическим институтом и предоставляет простой интерфейс для создания мобильных приложений, который доступен для любого пользователя. Для программирования в App Inventor используется визуальный язык программирования, очень похожий на язык Scratch и StarLogo Nova.
webapis-get-all-posts.png
Blockly
MicroBlocksЯзык программирования - клон языка Scratch специально спроектированный для управления физическими объектами
NetsBloxВизуальный блочный язык программирования - производный от Scratch и Snap! - внимание уделено сетевым возможностям, интеграции с Google картами. Внутри среды NetsBlox участники проектов могут коллективно редактировать блоки программы так же как это происходит в Google-документах.
OctoStudioСреда для разработки школьниками своих собственных игр на мобильных устройствах
Pocket CodeМобильное приложение для создание детьми игр и цифровых историй
ThunkableThunkable был создан в 2015 году на основе более известного конструктора приложений MIT App Inventor 2, как платформа для разработки на Android. Со временем инструмент обрел кросс-платформенность (iOS и Android) и стал платформой для разработки веб-приложений. Пользователи Thunkable могут добавлять кнопки, текст, изображения и даже карты, чтобы создать полнофункциональное приложение с такими функциями, как push-уведомления, датчики, геолокация, камера, Bluetooth, автономные возможности, и другое. Создание приложений в базовом аккаунте является бесплатным, но при этом можно создавать только общедоступные приложения.


Разработка пользовательского интерфейса

  • Основы дизайна интерфейса
  • Использование различных элементов интерфейса (кнопки, текстовые поля, списки и т.д.)
  • Представление данных, сохранение данных
  1. Как создать первое мобильное приложение в App Inventor
  2. Как поделиться своим приложением App Inventor

Основы программирования App Inventor

Перечень рецептов

Статьи для рецептов в среде App Inventor

 Description
Implementing GridsСоздание викторины в App Inventor.
Нам понадобятся: кнопка, флажки, изображения, надписи и горизонтальное расположение.
https://gallery.appinventor.mit.edu/?galleryid=ea6dd983-2353-4112-9d55-df2c17666439
Генерация новых агентов в App InventorВ данном рецепте описаны шаги генерации новых агентов в App Inventor. Мы создаём холст, расставляем по нему невидимые шарики. Потом 2 шарика появляются и начинают летать, отталкиваясь от стенок экрана. Если шарик 1 сталкивается с шариком 2, то появляется шарик 3.
Загрузить данные из внешнего CSV файла в App InventorМы хотим загрузить содержимое датасета в App Inventor и дальше совершать с ними какие=то действия. Распространённая ситуация. Источником данным может быть отдельный файл CSV или Google Sheets. Нам понадобится:
  • Screen
  • ListView
  • Web
Использование клавиш клавиатуры в App InventorКак управлять объектом в мобильном приложении
Использовать Notifier для вывода сообщенийМы хотим, чтобы Notifier вернул нам сообщение, которое ввёл пользователь мобильного приложение в окне ввода. Что он введёт, то и появится в зоне Notifie. Очень простой пример для освоения среды, добавление элементов интерфейса. В окно ввода пользователь вводит значение, а программа их возвращает в Notifier.
  • 120px-Notifier_text2_blocks.png
  • Как имитировать поведение покупателей в магазинеМы хотим создать имитацию взаимодействия людей в магазине - покупателей в магазине
    Как использовать Scratch APIКак использовать внешний API в средах визуального программирования
    Как использовать Web API with App InventorОбщие советы о том, как использовать внешний API и во что превращаются данные из JSON
    Как использовать рюкзак в App InventorМы хотим использовать рюкзак внутри App Inventor для того чтобы воспользоваться чужими умениями и функциями
    Как использовать холст и шарики (анимация)Интерактивные проекты, когда по холсту перемещаются рисунки и шарики (balls) - какие модели и симуляции можно построить в App Inventor. Эксперименты с возможностями раздела Drawing & Animation. Пример 1
    1. Разноцветные шарики - углерод, кислород, водород
    2. Когда шарики сталкиваются, Notifier говорит, какое именно соединение образовалось
    Как поделиться своим приложением App InventorМы создали новое мобильное приложение в среде App Inventor и хотим им поделиться с окружающими
    Как показать информацию об участнике из Scratch сообщества в App InventorПрограмма запросит имя участника (например, mres или patarakin) и соберёт о нем информацию, используя Scratch API:
  • соберёт его биографию и статус
  • число и перечень проектов
  • на кого он подписан
  • кто на него подписан
  • Как представить вики статью в App InventorУ нас есть имя статьи в вики и мы хотим в App Inventor об этой статье рассказать. Пользователь набирает имя статьи и на экране появляется:
  • Краткое содержание (description)
  • Редакторы
  • Ссылки из статьи
  • Ссылки к статье
  • Как рассказать историю рождения и гибели шариков в App InventorМы хотим показать возможные способы реализации паттернов Генерировать новых агентов и поглощать агентов в App Inventor
    Как сделать определитель животныхСоздание викторины в App Inventor.

    120px-Child_determ.png

    Нам понадобятся: Srcreen, Table Arrengement, 8 кнопок - по числу персонажей, 8 изображений, Глобальная переменная Animals - внутри неё список животных
    https://gallery.appinventor.mit.edu/?galleryid=3f7da819-90e6-4c8a-bcba-ddbb8669e155
    Как собрать данные API запроса в DictionaryПолучили данные запроса к mediawiki api и хотим считать их в Dictionary, чтобы иметь возможность обращаться по ключам.
    Как собрать новости сообщества ScratchСобрать и представить новости сообщества Scratch - Scratch API
    • 120px-Scratch_news_API.png
    Как создать Викторину в App InventorРуководство по созданию Викторины с использованием App Inventor.

    Цель Викторины: Ответить правильно на все вопросы.

    При каждом запуске Викторины пользователь отвечает на вопросы: при правильном ответе выводится результат "Ответ правильный", при неправильном - "Ответ неправильный".

    Ссылка на проект: https://ai2.appinventor.mit.edu/#5953498929561600
    Как создать игру "Лопни шарик" в App InventorВ данном рецепте описаны шаги создания игры в App Inventor. Мы создаём холст, расставляем по нему спрайты. Также создаем две кнопки: стоп и старт
    Как создать мобильную игру?Создание игры на телефон
    Как создать первое мобильное приложение в App InventorВ рецепте описывается последовательность действий при создании приложения в App Inventor. В этом примере мы обращаемся с мобильного телефона по кнопке к Scrath API и выводим полученные данные на экран.
    Как создать расписаниеПриложение, которое помогает правильно распределять свое время
    Как сравнить followers following для участника ScratchУ нас есть имя участника. Мы хотим сравнить множество тех, на кого он подписан и множество тех, кто на него подписан. Приложение будет выводить тех, кто взаимен
    Как управлять поведением агентов в App InventorКак управлять объектом в мобильном приложении
    Как установить своё приложение App Inventor на телефонСоздали свое приложение на компьютере и хотим установить его на телефон
    Создание игры "VladPong Duel" в App InventorГотовьтесь к захватывающему путешествию в мир уникальных сражений на стиле Pong в игре "VladPong Duel". В этой игре ваше имя - Влад, и вы готовы к бескомпромиссным дуэлям на пинг-понговом поле будущего!
    Создание игры "Мяч в Руках" в App Inventor"Мяч в Руках" - захватывающая аркада, где ваша реакция и точность становятся ключом к успеху! Ваш друг, мальчик, в восторге от своего мяча, который бесконтрольно катится вперед-назад. Ваша задача - метко нажимать, чтобы вовремя остановить мяч в момент, когда он окажется рядом с мальчиком.
    Создание игры "Угадай число" в App InventorРуководство по созданию игры "Угадай число" с использованием App Inventor.

    Цель игры: Угадать загаданное число за минимально возможное количество ходов.

    При каждом запуске игры случайным образом выбирается число от 1 до 25, которое игрок должен угадать, игроку дается 10 попыток для угадывания числа.

    Ссылка на проект: https://gallery.appinventor.mit.edu/?galleryid=dbce7297-b99d-474f-af24-8ff1b79140f1
    Трекер отслеживания задачВ данном трекере можно будет отслеживать и создавать свои задачи, привязывать их к местоположению, учитывать праздничные дни и приоритезацию задач, а также сортировать по времени и дате.
    Установить эмулятор App Inventor на компьютерМы хотим тестировать приложения App Inventor на том же компьютере, где мы их и создаём.

    Переменные

    Глобальные
    Global app.png
    1. Get
    2. Set
    Локальные - внутри блоков функции

    Local variable proc.png

    Условные операторы и циклы

    Условия внутри игрового проекта, когда столкновение порождает шарик

    Collidee if.png

    Условия внутри процедур работы со значениями и списками

    Procedure transformApp.png

    Пример использования - https://gallery.appinventor.mit.edu/?galleryid=62a1c638-31a9-4e73-9e86-f9395f33f225

    Условия внутри процедур работы со значениями и списками

    Пример с локальными переменными

    Типы данных

    1. Использование списка для хранения значений
    2. Использование базы данных TinyDB для хранения значений

    сохранение значений

    Функции

    Процедуры (do)

    • Устанавливает положение, направление и видимость объекта на холсте

    Do procedure.png

    Процедуры (result) - возвращают значение

    Result procedure.png

    Пример использования процедуры в проекте - https://gallery.appinventor.mit.edu/?galleryid=62a1c638-31a9-4e73-9e86-f9395f33f225

    Работа с сетью

    • Основы работы с HTTP-запросами
    • Работа с API

    Тестирование и отладка

    • Основы тестирования мобильных приложений
    • Использование инструментов для отладки

    Развертывание и публикация

    • Подготовка приложения к публикации


    Работа в вики среде

    Мастер-класс «Совместная работа со знаниями на поле цифровой дидактики»

    Критерии оценки по дисциплине

    Образовательный результат Тема Задание Пример
    Представляет разнообразие мобильных образовательных приложений, умеет сравнивать и описывать обучающие и аналитические мобильные приложения (насмотренность и наигранность) Введение в мобильную разработку Описать пример образовательного или аналитического мобильного приложения по шаблону в категории Категория:DigitalTool или Категория:DEG
    Умеет использовать различные компоненты, такие как кнопки, текстовые поля, изображения и другие, для создания интерактивных пользовательских интерфейсов Разработка пользовательского интерфейса Использовать в своем проекте составляющие пользовательского интерфейса
    Умеет применять концепции программирования, такие как условия, циклы, переменные и функции для создания мобильных приложений. Основы программирования Описать свой проект и задачи, которые в нем решены за счёт использования переменных, функций и различных типов данных в категории
    Умеет формировать в мобильном приложении запросы к внешним API. Умеет пользоваться API песочницей - Песочница MediaWiki API Работа с сетью, Работа с API, Получить, представить и использовать в проекте с App Inventor данные из API
    Умеет тестировать свои приложения и исправлять ошибки. Умеет публиковать проекты и размещать их в группе Тестирование, отладка, публикация Опубликовать свой проект в галерее и студии группы.