Найти в Дзене
Avi xo games

ЧТО ТАКОЕ МОБИЛЬНОЕ ПРИЛОЖЕНИЕ.

Всем здорова. Так как ты, держал свой телефон в руках, то точно видел, что в нём много приложений. И раз ты читаешь эту статью, то ты задумался над тем, что это за приложения, и для чего они нужны. И как они вообще работают в телефоне. И какие они бывают. Я тоже недавно об этом задумался, когда искал в интернете информацию об одном незнакомом мне приложении. И так несколько раз. Пролистав много сайтов, я обратил внимание на три момента: 1. Что информация о приложениях телефона разбросана по разным сайтам. 2. Большая часть статей написана очень давно и устарела. 3. И кстати написано, так что прочитав нечего не понятно. Как же мне хотелось, чтобы всё это было в одном месте и на понятном языке. И ты, наверное, думал также. Поэтому я решил исправить эту проблему и решил написать эту статью. Перед тем как мы начнем, хочу сказать следующее для тех, кто разбирается в программировании в целом. 1. Это статья для тех, кто не знает, что такое мобильное приложение и хочет разобраться в этом. 2. И
Оглавление

Всем здорова.

Так как ты, держал свой телефон в руках, то точно видел, что в нём много приложений.

И раз ты читаешь эту статью, то ты задумался над тем, что это за приложения, и для чего они нужны.

И как они вообще работают в телефоне.

И какие они бывают.

Я тоже недавно об этом задумался, когда искал в интернете информацию об одном незнакомом мне приложении.

И так несколько раз.

Пролистав много сайтов, я обратил внимание на три момента:

1. Что информация о приложениях телефона разбросана по разным сайтам.

2. Большая часть статей написана очень давно и устарела.

3. И кстати написано, так что прочитав нечего не понятно.

Как же мне хотелось, чтобы всё это было в одном месте и на понятном языке.

И ты, наверное, думал также.

Поэтому я решил исправить эту проблему и решил написать эту статью.

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

1. Это статья для тех, кто не знает, что такое мобильное приложение и хочет разобраться в этом.

2. И не разбирается в телефоне и программировании.

3. Не понимает слов и определений, которые используют программисты.

Поэтому я буду объяснять всё простыми словами и в общих чертах.

Поэтому не докапывайтесь до определений и слов, которые я буду использовать.

Итак, поехали.

Что такое Приложение.

Для начала разберёмся с самим понятием, что такое приложение простым человеческим языком.

Ели ты пойдёшь учится на программиста, или сидишь в школе на уроке информатики, то тебе учитель будет объяснять так:

Приложение это синоним слова программа.

Программа – список слов для компьютера или телефона написанных на листе с помощью другой программы с применением определённого языка, читая который компьютер или телефон делает какие-то действия исходя из того что написано на этом готовом листке программы.

Под «листом» я имею ввиду файл текстового редактора кода.

А Под «списком слов» строчки кода написанные на языке программирования.

Под «готовым листком» исполняемый файл самой программы с набором действий в определённом порядке в готовом виде в формате (.exe, app, или других).

Набор действий по-другому называются инструкции.

Скажет для примера: Вот вам мама написала на листочке с помощью русского языка.

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

Это и есть программа простым языком

И нарисует тебе такую схему

Схема 1
Схема 1

И добавит, что приложения бывает трёх видов.

Что эта схема значит?

Что есть:

Мобильные – программы, написанные для телефонов и планшетов, и работают в основном на них.

Но тут есть один момент, о котором я скажу чуть позднее.

Десктопные – программы, написанные только для компьютеров, и работают в основном на компьютерах и ноутбуках.

Веб – программы, это обычные сайты, они бывают двух видов мобильные и компьютерные; поэтому они работают и там и там.

Они отличаются по внешнему виду

К примеру, вот как выглядит сайт «Вконтакте» с экрана компьютера.

-2

Это называется ПК версия сайта.

А вот как выглядит сайт «Вконтакте» с экрана телефона.

-3

Это называется мобильная версия сайта.

Сайт - Это та вещь, в которой ты копаешь ответы на думашку, смотришь картинки и видео, читаешь новости, смотришь погоду, качаешь кино, музыку; с помощью программы браузера.

Браузер – программа, которая помогает тебе открывать и читать интернет страницы в телефоне или компьютере.

Короче

Это правильно, но только в общем смысле слова, то есть широком; (ПРОСТОМ)

Это говорят тебе, чтобы тебе было проще понять, что такое приложение.

Что такое приложение в узком смысле?

На самом деле в узком смысле этого слова

Если говорить о телефонах, то правильно будет использовать это слово с другим словом.

«Мобильное приложение»

Если разделить эти слова то

Мобильное– значит, принадлежит к смартфонам планшетам и другим устройствам, которые можно взять с собой (кроме ноутбука)

Приложение– Программа, которая добавляет новые возможности телефону, планшету или расширяет уже существующие в нём возможности заложенные производителем.

Соединим эти два понятия

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

И скачивается с интернет магазина приложений, или какого-то сайта.

Но не обязательно можно и поделится приложением через приложение: SHAREit передача файлов.

-4

Такая программа пишется с учётом особенностей операционной системы, на которой она будет работать Андроид, iOS, Windows Phone и т.п.

Теперь по поводу этого самого НО.

В интернете можно найти определения, которые говорят, что мобильное приложение работает только на телефонах и планшетах.

Это с одной стороны, правда, а с другой нет.

Потому что мобильное приложение можно запустить на компьютере через программу эмулятор андроид

К примеру, NoxPlayer.

Так что мобильные приложения могут работать не только в мобильных устройствах, но и на обычном Компьютере.

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

И помогала телефону запускать программы и игры, которые ты скачал и установил.

Без неё он не работает и не включается.

И считается куском железа.

Такая операционная система называется мобильной ОС.

О классификации видов приложений

Вспомнив то, что мне говорили на уроках информатики о приложениях, и прочитав большое количество сайтов в интернете.

А также посмотрев видеоролики на эту тему на сайте Ютуб.

Я понял, что в основном есть 4 классификации видов приложений:

1. По способу организации и работы приложения.

2. По значимости приложения (его статус).

3. По предназначению приложения

4. По доступности контента в приложении.

Контент - это содержание приложения, то есть информация, которую даёт тебе приложение.

Картинки видео музыка новости и т.д.

С начало разберём первую: По способу работы приложения.

Виды мобильных приложений

Есть три вида приложений:

  • Веб-приложение;
  • Нативное приложение;
  • Гибридное приложение.

В некоторых сайтах по типу этого

Можно ещё встретить:

  • Кроссплатформенное приложение

Ссылка

-5
Но об этом виде я расскажу потом.

Поэтому, единственное что тебе надо пока понять:

Это то, что в основном выделяют три вида. Те, что я привёл выше.

Давай рассмотрим каждый вид подробнее.

Веб-приложение – приложение, которое общается с сервером при помощи запросов. Обмен информацией между ними происходит по сети интернет в виде пакетов.

Такое приложение не может работать без интернета и является клиентом,

И использует браузер для своей работы на любом устройстве.

Минусы веб приложения

1. Можно подцепить вирус на свой телефон.

(Перейдя по подозрительной ссылке к примеру в приложении Вконтакте).

2. При плохом Интернет-соединении приложение работает медленно, или выдает тебе сообщения:

1. нет интернета на устройстве.

2. Проверьте подключение к сети и повторите попытку.

3. Нет подключения к сети (интернету).

4. Нет соединения с сетью (интернетом).

5. Вы не в сети.

6. Нет доступных сетей.

7. Подключитесь к сети (Интернету).

8. Не удаётся установить соединение с сайтом.

9. Для работы приложения необходимо подключение к интернету.

10. Не получилось подключиться к интернету.

11. Не удалось открыть веб страницу.

12. Мобильный интернет отключён.

И так далее.

Нюанс

Но всё же есть возможность сделать так, чтобы веб приложение работало без интернета.

Подняв на локальном хосте Сервер

-7

Это можно сделать даже на телефоне

-8

Так что если ты найдёшь в интернете утверждение, что веб приложение не может работать без интернета

Это как бы, правда, но в том случае если ты обычный пользователь, и не собираешься поднимать локальный сервер на своём телефоне или компутере.

Это такое вот исключение из правила.

Плюсы веб приложения.

1. Можно использовать на любой мобильной операционной системе.

2. На любом мобильном устройстве.

3. Низкая стоимость и быстрые сроки разработки.

Особенность разработки

Для создания внешнего вида таких приложений используют языки «программирования» HTML 5, CSS, JavaScript, bootstrap и т.д.

Хотя, HTML 5, CSS это не язык программирования, это язык гипертекстовой разметки текста.

Его задача, создавать и выводить на экран простой текст, и текст в виде гиперссылок на странице сайта.

Гиперссылка - это текст фотография, иконка и т.д. по нажатию на него откроется другая страница сайта или раздел статьи на сайте

На сайтах ссылки выглядят как подчеркнутое слово чаще всего синего цвета, но бывает и другой цвет.

CSS - это язык для создания основных цветов сайта

А у настоящего языка программирования больше одной задачи.

Но для у прощения я назвал их так, чтобы было проще понять.

Внешний вид приложения - Это основной цвет приложения, количество страниц или разделов приложения, кнопки и эффекты анимации приложения или сайта.

Это всё то, что мы видим своими глазами когда открываем приложение.

Это называют оболочкой или интерфейсом приложения или сайта.

Программисты называют эту часть frontend (Фронтэнд).

А Профессия называется frontend программист.

А для внутренний части, чтобы создать основу приложения используются языки MEAN stack, Hibernate, cotlin, swift C#, C++ и т.д.

Основу программы называют скелетом или фундаментом.

Ещё у такого приложения есть серверная часть.

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

То есть скачивало файлы не слишком медленно.

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

Файлы приложения - это документы и данные которые нужны для работы самого приложения.

Сюда входят:

  • HTML страницы сайта
  • Список товаров магазина.
  • Список адресов электронных почт и имя пользователя в приложении, (чтобы вы могли видеть от кого комментарии в приложении).
  • Личные данные человека которые нужны для создания странички в соц. Сети.
  • Дополнительный контент мобильных игр, или сама игра целиком.
  • Само приложение целиком

И так далее.

Иногда это всё называют база данных

База данных – Любая информация в электронном виде, которая хранится в определённом месте.

Такое место называется сервером.

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

Такие устройства называются клиентами.

Это может быть любое твоё устройство которое может выходить в интернет.

Телефон, планшет телевизор ноутбук, умные часы, смарт дисплей и т.д.

Создание серверной части приложения называют backend (Бэкэнд).

А профессия backend программист.

Для её создания программист использует языки серверного программирования JavaScript, Python, PHP, Java, Ruby, Golang C# Perl.

Основную и серверную часть приложения видит только программист.

Пользователь её видеть не может.

Пример веб приложения

  • Приложение магазина DNS.
  • М видео.
  • Fix price доставка самовывоз.
  • MakeMyTrip.
  • Oyo (Ой О)
  • Flipkart.
  • Amazon.
  • Яндекс маркет: здесь покупают.
  • Яндекс еда и ему подобные
  • Приложения электронных почт gmail, mail ru и т.д.
  • Приложения соц. Сетей. Одноклассники, Вконтакте и т.д.
  • Приложения мобильных браузеров: Яндекс, Google и тд.
  • Приложения облачных хранилищ (Яндекс диск, Google диск и тд. );для хранения фотографий видео музыки, документов.

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

Сами веб приложения разделяются на:

1. SPA приложения

2. MPA приложения

3. PWA приложения

4. Серверные приложения

5. Клиентские приложения

Single page application – приложение состоит из одной страницы всё её содержимое размещается на одной html странице.

все изменения на странице происходят без полной наглядной перезагрузки страницы и просто подгружаются благодаря технологии AJAX (Asynchronous JavaScript and XML) и фреймворкам JavaScript: Angular, React, Ember, Meteor, Knockout.

Является самым дешёвым

Плюсы SPA

  1. Высокая скорость — все содержимое страницы загружаются за один раз.
  2. Гибкость и отзывчивость пользовательского интерфейса — за счет того, что веб-страница одна, проще построить красивый интерфейс,
  3. SPA быстрее создавать потому что страница одна.
  4. Кэширование данных — приложение отправляет всего один запрос, собирает данные, а после этого может работать без мобильного интернета
Загрузилась страница, вырубил интернет на телефоне, и можешь читать страницу без интернета.

Минусы SPA

  1. Seo оптимизация требует серверного рендеринга — из-за того, что контент загружается при помощи технологии AJAX.
  2. Нагрузка на браузер — фреймворки тяжелые, они долго загружаются.
  3. Необходима поддержка JavaScript — без JS нельзя полноценно пользоваться полным функционалом приложения. (Одни функции приложения будут доступны, а другие нет).
  4. Некоторые пользователи отключают Javascript в своих браузерах, без него приложение не будет работать.
  5. утечка памяти в Java Script — SPA больше подвержена действиям злоумышленников.

Пример spa приложений:

1. Почта Gmail,

2. Почта mail.ru

3. Яндекс почта – Yandex mail.

4. GitHub, (соц. сеть для программистов)

5. Meduza.

Multi Page Application – приложение состоит из большого количества страниц, все изменения на странице происходят наглядно через загрузку страницы.

Плюсы MPA

1. Простая SEO оптимизация — можно оптимизировать каждую из страниц приложения под нужные поисковые системы;

2. Привычность для пользователей — за счет простого интерфейса и обычной стандартной навигации.

Минусы MPA

1. Совместная работа - Создание внешней и серверной части приложения тесно связаны; поэтому front-end и back-end. разработчики работают вместе друг с другом, и разделить их работу не получится.

2. Сложная разработка — требуют использования фреймворков как на стороне пользователя, так и на стороне сервера.

3. Так как страниц у приложения много, его дольше и дороже создавать.

Пример: приложения интернет магазинов

1. Amazon,

2. Citilink

3. М видео

4. DNS

5. Яндекс еда и ему подобные.

Они дороже одностраничных.

Progressive Web Application (Прогрессивные web-приложения) - это сайты, которые выглядят как мобильные приложения. Они работают прямо в браузере так, как обычное приложение.

Для тех кто не понял

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

При этом такое приложение остаётся сайтом; но внешне оно выглядит как обычное приложение.

И чтобы им пользоваться не обязательно скачивать приложение из магазина play market на телефон.

Делать это можно через браузер.

Как понять, что приложение относится к pwa

В интернете, на разных сайтах список примеров pwa приложений разный.

Я хотел сам проверить являются ли все эти примеры правильными.

Но как проверять приложения на поддержку pwa я не нашёл.

Я понял, что этого в интернете вообще нет, и мне пришлось спрашивать у людей.

Спасибо этому человеку из телеграмм группы

Благодаря ему я понял что такое PWA и как оно работает.

-9

Я перешёл по его ссылке на сайт с технологией PWA и всё понял.

А теперь я покажу тебе, как проверить что приложение является pwa

Открываем браузер который поддерживает технологию pwa к примеру Google Chrome или Firefox

Они выглядит вот так

-11

Покажу на браузере Chrome.

Заходим к примеру на сайт телеграмм. (Ссылка Telegram Web)

Это может быть любой сайт.

Когда ты зайдёшь на такой сайт то:

Сайт предложит скачать приложение напрямую из браузера. (Не всегда)

Если оно появилось, нажимаем на это сообщение.

Появится окно Установить приложение Telegram Web, нажимаем на «установить»

Далее

Приложение создаст ярлык на рабочем столе, либо в меню рабочего стола

-13

Приложение может показывать пуш-уведомление в шторке уведомлений телефона по типу этого

-14

По этому, если ты в браузере ведешь сообщение с предложением об установке, оно является PWA.

Вот примеры сообщений:

Если сообщения нет!!!

Бывает, что на сайте на который зашёл, нет сообщения «добавить приложение на главный экран телефона» (Оно не появилось)

У меня так случилось, когда я проверял сайты Вконтакте, одноклассники и Pinterest.

Тогда нужно сделать это вручную, если делать через браузер Chrome то:

Нажимаем на три точки в правом верхнем углу и пункт «установить приложение».

Или «добавить на главный экран»

В каждом браузере эта кнопка, и путь к ней отличается!!!

Вот как выглядит это на internet samsung браузере
Вот как на Firefox (фаер фокс)
В Яндекс старт

Отличия pwa от обычных приложений

Я заметил на глаз 4 отличия:

1. После установки PWA приложения, в домашнем меню телефона, будет видно 2 разных значка одного и того же приложения.

Хотя правильное название этих значков "Ярлыки"

2. Название и внешний вид значков отличаются.

-20

3. PWA приложение весит не больше 1 Мегабайта, в отличии от обычного приложение скаченного из магазина Google play market.

А в интернете ты найдёшь что pwa приложения могут весить меньше 1 мегабайта.

Это действительно так

К примеру приложение сайта pinterest, скаченное из магазина play market весит больше, чем скаченное из браузера Google Chrome.

4. У PWA приложения, в том месте где указывается номер версии приложения будет стоять номер 1

А вот отличия во внешнем виде (Дизайн).

PWA на компьютере

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

Плюсы PWA

  1. Кроссплатформенность — могут работать сразу с несколькими операционными системами;
  2. Высокая скорость работы, и возможность отображения данных в офлайн-режиме с моментальной загрузкой;
  3. Высокая скорость установки;
  4. Быстрая разработка — для создания PWA, не нужен отдельный сайт, достаточно изменить уже существующий.

Минусы PWA

1. Не все компьютерные и мобильные браузеры могут хорошо поддерживать технологию pwa.

Например: браузер iE и Opera mini

2. PWA приложение активно тратит заряд батареи телефона.

3. Не все функции мобильного устройства доступны.

Это касается, операционной системы iOS. Например, для PWA нельзя использовать Face ID, Touch ID, ARKit, другие функции.

На Андроиде с этим лучше, но в принципе также ограничения есть

Примеры pwa приложений:

  1. Google документы
  2. Google презентации
  3. Google Таблицы
  4. Google формы
  5. AliExpress
  6. Twittor, инстаграм телеграмм, facebook, ВК,ОК, Spotify,Tinder
  7. Google диск и ему подобные.
  8. Приложение википедия.
  9. Pinterest (сайт с картинками).
  10. YouTube, Rutube
  11. Google Play market
  12. Samsung galaxy store

Что ещё я заметил

Чтобы проверить приложения: Google play, YouTube, Google диск и Samsung galaxy store Мне пришлось отключить их через меню приложений

Перейдя по: <Настройки><Приложения><Выключить>Отключить приложение>

А потом через браузер Chrome зайти к примеру на сайт ютуба, и скачать PWA приложение через браузер Chrome.

Иначе, когда ты в браузере откроешь ссылку к примеру к примеру на мобильную версию сайта ютуб, то телефон запустит и откроет обычное приложение ютуба.

Если кому интересно, PWA приложение YouTube внутри выглядит так.

Как я понял, когда устанавливаешь PWA приложение в телефон, телефон думает что ты установил другое приложение.

Слева PWA приложение, справа Обычное приложение.
Слева PWA приложение, справа Обычное приложение.

Поддержка технологии pwa

Не все браузеры могут хорошо поддерживать технологию pwa.

Список браузеров которые поддерживают pwa есть на этом сайте

Ссылка на сайт

Как проверить поддерживает ли браузер технологию pwa

Чтобы проверить поддерживает ли твой браузер pwa перейди по этой ссылке:

Ссылка https://anicademy.herokuapp.com/

Если ты увидишь такие сообщения

То браузер поддерживает технологию pwa.

Серверные web-приложения

Серверные web-приложения работают на серверах. Пользователь с такими приложениями не работает на прямую как с другими приложениями. Результат их работы показывается на устройстве пользователя.

Для их написания используют такие языки программирования: Python, Java, Ruby, PHP, C#

Пример серверного приложения– push-уведомления (от почтовых сервисов, мессенджеров, операторов связи и мобильных игр в твоём телефоне.

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

Клиентские web-приложения

Клиентские приложения работают на веб технологиях то есть созданы с помощью языков HTML 5, CSS, JavaScript, для работы им нужен любой интернет браузер пользователя. Они не сохраняют результат своей работы дольше одной сессии.

примеры таких приложений: браузерные игры, (бутылочка и т.д.) любой браузерный онлайн фото редактор который работает через интернет.

Как работает веб-приложение?

Если говорить по проще.

На примере приложения магазина DNS

Когда мы скачиваем такое приложение из Play market, и других магазинов. Мы на самом деле скачиваем браузер который выглядит как приложение. (Условно говоря)

Когда мы открываем приложение, мы запускаем этот браузер.

Если интернет на телефоне включен, то приложение само переходит на сайт www.dns-shop.ru

-31

Отправляя тем самым запрос на подключение к серверу.

Запрос приложение отправляет по специальному каналу который соединяет приложение и сервер.

Он называется протокол https Это дорожка к серверу от тебя.

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

То есть:

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

Этот документ называется HTML страница.

Сервер обрабатывает запрос даёт доступ на чтение этой страницы и отправляет данные сайта обратно, по каналу https приложению магазина DNS.

Этот запрос отправляется каждый раз когда ты нажимаешь на какую то кнопку или ссылку в приложении магазина DNS

То есть когда ты открываешь:

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

Приложение каждый раз отправляет запрос на открытие страницы сайта магазина.

ПОТОМ:

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

Читает этот документ и показывает страницу сайта в приложении магазина DNS выводя всю эту полученную информацию на экран телефона или планшета.

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

И тогда приложение показывает на экране телефона сообщение «нет подключения к серверу или к интернету.

А если информация от сервера идёт долго или интернет у тебя медленный то приложение грузит страницы медленно.

ВОПРОС

У тебя возникнет вопрос: как сервер понимает, какому именно приложению и какому телефону, что и куда отправить.

И как приложение понимает к какому сайту подключится.

И что за устройство подключилось к серверу.

Приложений, телефонов и сайтов же много.

Во первых

Дело в самом запросе, он называется http сообщение.

Вот сего схема

-34

В нем указывается:

1. Название канала передачи сообщений то есть: https

2. адрес сайта.(www.dns-shop.ru)

3. Тип сообщения: http запрос или http ответ.

4. Заголовок (указывается название браузера его версия и тип операционной системы и её версия в телефоне или компьютере, код состояния).

5. Тело сообщения (Это твой текст запроса в поисковой строке.

Так же, тут указываются данные, которые мы получим от сервера в результате поиска по интернет магазину в http ответе.

Чтобы проще запомнить что куда я делал такую шпаргалку

-35

Во вторых

До того как отправить http запрос, приложение или браузер устанавливает TCP соединение.

Чтобы отправить Syn сообщение сообщив тем самым серверу, что оно хочет подключится к нему.

С помощью него приложение спрашивает у сервера можно к тебе подключится или нет. Также в этом SYN пакете указываются порты устройства.

Потом сервер отвечает на SYN сообщение отправляя ACK и SYN сообщение приложению или браузеру

Отвечая ему как бы

ACK- да можно

SYN – А можно я тоже к тебе подключусь.

А приложение отвечает серверу ACK сообщением Да можно.

Образно, выглядит это так

Это TCP соединение ещё называется трёх сторонним рукопожатием.

До этого TCP пакета, приложение отправляет серверу свой внешний ip адрес c помощью протокола ip; Его ещё называют ip пакет

И сразу отвечая на вопрос: Где покажи ткни?

Вот показываю, тыкаю. Вот его схема.
-37

До этого IP протокола идёт уровень способа передачи данных через мобильный интернет

-38

Что такое термин протокол?

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

IP адрес - уникальный номер позволяющий определить к какой интернет сети принадлежит устройство. (Российской или США)

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

Выглядит как число разделённое точками пр: 195.14.0.4 (ip адрес четвёртой версии)

По полученному ip адресу сервер определяет Mac адрес устройства.

С помощью протокола ARP

MAC адрес – личный номер устройства, помогает найти устройство среди миллионов других одинаковых устройств.

Его ещё называют физический адрес устройства

Пример мак-адреса 16:FA:A8:11:BC:DE

Это как vin номер у автомобиля

Если говорить проще.

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

По МAC адресу сервер понимает какому конкретно телефону их отдавать.

Протоколы TCP и ip нужны для того, чтобы браузер или приложение познакомились с сервером, это два самых важных протокола поэтому их часто называют вместе Протокол TCP/ip

Но не только поэтому

Есть такая модель которая схематично показывает как передача данных работает в интернете Она называется Модель TCP/IP вот ещё и поэтому.

-39

Между Протоколом TCP и HTTPS находится протокол TLS он нужен для защиты пакетов. Раньше он назывался протокол SSL сейчас используется версия протокола TLS v 1.3.

Дальше сервер с браузером или приложением отправляют друг другу TLS сообщения чтобы обменяться друг с другом сертификатами доверия.

Сервер проверяет сертификаты браузера, со своими эталонами сертификатов.

Браузер проверяет сертификаты сервера со своими эталонами сертификатов

Так сказать на вшивость

Этот процесс называется автоидентификация

Также с помощью TLS сообщений браузер и сервер договариваются как будут шифроваться и расшифровываться данные.

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

Так же это значит что у сайта есть сертификат доверия и ему можно доверять. Это самый главный признак того, что сайт не принадлежит мошенникам и его можно спокойно открывать и оставлять свои личные данные.

Ну а после уже На самом последнем Этапе отправляются сами http сообщения с тем что хочет браузер или приложение от сервера.

-41
Это всё опять-таки очень упрощённо.

Ещё между сервером и твоим телефоном, в котором стоит приложение, находится DNS сервер, который хранит ip адрес сайта.

ip адрес сайта – это индивидуальный номер сайта, нужен чтобы отличить один сайт от другого и понять в какой стране находится сайт.

Выглядит вот так 185.165.123.176

Но бывает и таким

-42

DNS сервер – большой компьютер в котором хранится список ip адресов разных сайтов и их понятные человеку названия. (www.dns-shop.ru).

Выглядит этот список образно говоря так:

-43

DNS серверов тоже много и у каждого DNS сервера есть свой адрес.

Он называется адрес dns сервера. Вот к примеру адрес двух dns серверов компании Google

1. 8.8.8.8

2. 8.8.4.4

Это 4 числа разделённые точками.

И сначала именно туда стучится приложение

У DNS сервера получает ip адрес другого сервера в котором лежит сайт

Идет к нему, даёт ему ip адрес телефона которому нужна информация сайта

А сервер даёт её приложению.

Обращается приложение к DNS серверу не часто, а периодически чтобы проверить не изменился ли адрес сайта.

Вдруг сайт переехал в другое место.

Откуда браузер или приложения знают адрес DNS сервера?

Адрес DNS сервера приложения берут у провайдера он хранится внутри устройства будь-то компьютер или телефон.

Его можно увидеть и изменить на другой самому

В телефоне или планшете

Нужно включить Wi-fi и подключиться к другому телефону, иначе не получится посмотреть DNS адреса

дальше сделать так как на скриншотах ниже.

И найти пункт DNS 1 и DNS 2

-46

На компьютере

Ты должен попасть в это окно и нажать "Сведения"

-48

И открывшемся окне

-49

Найти

-50

По поводу части данных которые отправляет сервер.

Часть данных сайта которые отправил сервер приложению магазина DNS, само приложение сохраняет в памяти телефона в виде файлов которые называются Кеш файлами.

Эти кэш файлы входят в общий размер памяти приложения которое показывает сколько всего весит приложение магазина DNS.

Вот сами посмотрите.

-51

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

Эти кэш файлы собирает любое приложение телефона.

Ух отвлёкся

Так как мы скачиваем приложение магазина которое может только получать открывать и читать файлы и HTML документ сайта.

Благодаря тому что оно понимает языки HTML 5, CSS, JavaScript и так далее.

В нём по сути больше ничего нет, поэтому оно занимает не много места на телефоне.

Ещё мы на уроках рисовали такую схему работы

-52

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

В принципе, все звенья этой схемы могут меняться.

Нативное приложение.

Нативное приложение – Это приложение которое создано под одну конкретную операционную систему.

То есть:

Скажем приложение создали для ОС Android. Значит оно работать будет только на Телефонах и планшетах на которых стоит ОС Android; От фирмы Google.

Создали приложения для OC ios оно будет работать только на телефонах iphone и планшетах iPad; От фирмы Apple.

Создали приложение под ОС Windows Phone; Оно будет работать только на планшетах и телефонах с операционной системой Windows Phone; От фирмы Microsoft.

По поводу определения нативное приложение

Знающие люди скажут что-то вроде этого

-53

Или вот это

-54

Но люди которые не знают что такое программирование, они не понимают что такое платформа.

И уж точно не знают что такое нативные средства разработки.

В интернете можно найти много определений большая часть из которых не понятно написана.

Поэтому споря с людьми в телеграмм группе, я нашёл в интернете вот это определение.

-55

С ним на удивление согласились

-56

Но это уже слишком сложное определение для понимания простого человека.

Как сказал бы бог ютуба (Izzy Laif)
«Чё, учил мат часть да?» ты пойди попробуй объясни это всё человеку с улицы, чтобы у него не появились вопросы.
Чё не можешь?; а я объясню.

Поэтому я написал своё определение попроще.

А тут нужно разбирать каждое слово.

Ибо тут без бутылки не разберёшься.

Разбор сложного определения.

-57

Я проверил что значит слово нативный через переводчик, оно переводится с английского как, «Родной».

-58

Памятуя то, что мне сказали умные люди в сообщениях

-59

Я посмотрел что такое нативные средства разработки.

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

Сюда входят и языки программирования которые поддерживаются операционной системой, API, Фреймворки и много чего ещё.

Фреймворк- готовый каркас программы, с набором уже написанных кусков кода.

API– (Эй пи ай) готовый набор способов общения приложения с сервером.

Это всё вместе называется SDK

SDK (от англ. software development kit) — набор средств разработки, позволяющий программистам создавать приложения для определённых платформ.

То есть под телефон, компьютер, планшет, игровая консоль, операционная система и тд.

И у каждой компании и операционной системы эти инструменты свои.

Если говорить о нативных инструментах как о программах то

Для ОС Android родной программой для создания приложений была Android SDK.

Она была основной программой создания приложений с октября 2009 по конец 2015 года.

И использовалась до сентября 2017 года до последний версии 26.1.1

А в конце 2015 года и до сих пор основной программой для создания приложений под ОС Android является Android Studio.

Для ОС ios такой программой является Xcode

Для Windows Phone такой программой является Microsoft Visual Studio

Эти программы что я перечислил являются средой разработки.

Среда разработки-это программа которая, поддерживает определённый язык программирования, в которой программист создаёт другую программу,

Такая программа состоит из набора маленьких программ:

1. Текстовый редактор с подсветкой кода.

2. Компилятор.

3. Отладчик.

4. Интерпретатор.

5. Браузер классов.

6. Инспектор объектов.

7. Диаграмма иерархии классов.

8. Инструменты для упрощения конструирования графического интерфейса пользователя.

9. Средства автоматизации сборки.

10. Средства для интеграции с системами управления версиями (Git);

Подробнее об этом я расскажу в другой статье «Что такое среда разработки»

Особенность разработки нативного приложения.

Такое приложение пишется на языке программирования системы в которой оно будет использоваться.

Например, большая часть приложений для iOS написана на языке программирования Swift. Данный язык специально создан для создания приложений в операционной системе от Apple (для Android используют Java и cotlin).

Родные правила по созданию приложения размещаются на официальном сайте производителя операционной системы

И выглядят они вот так

Ссылка на документацию

Пользуйся переводчиком, она на английском!!!

Documentation  |  Android Developers

Заходишь на сайт андроида, листаешь в самый низ и смотришь, там их много.

Короче, это всё вместе и есть нативные средства разработки,

Если программисты использовали их, то приложение считается нативным (Родным).

Признаки нативного приложения:

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

2. Приложение использует детали только того телефона или планшета для которого оно создавалось.

Детали других моделей телефонов или планшетов приложение не знает и поэтому не умеют с ними работать.

3. Приложение открывается и работает только на одной операционной системе модели телефона или планшета.

4. Пишется несколько версий приложения под разную операционную систему (Windows Phone, IOS, Android)

5. Может требовать мобильный интернет для своей работы, или нет (Смотря какое это приложение).

6. Есть ярлык быстрого доступа в меню телефона или на рабочем столе.

По поводу этих признаков

Люди которые разбираются в этом, будут скулить мне в коменты:

Я сказал этому человеку следующее

-62

И он начал объяснять подробнее, поэтому вот его вариант признаков:

Хотя вот мнение другого человека по поводу моих признаков.

-64

Этот комментарий вызвал большие споры.

Это всё о чём говорит?

А о том, что сейчас каждый понимает сам как хочет, и не понятно кого слушать.

Минусы нативного приложения

  1. Долго пишется программистом из за того что нужно писать несколько версий приложения под (Windows Phone, IOS, Android) отдельно
  2. Нужно минимум 3 команды программистов со знанием Windows Phone, IOS, Android инструментов разработки
  3. Дорогая цена разработки.

Плюсы нативного приложения:

  1. Приложение будет работать в любом месте независимо от интернета ( если оно не требует интернет для своей работы)
  2. Быстрая скорость работы;
  3. Не так часто выдаёт ошибку.
  4. Экономия батареи и памяти мобильного устройства.

Нативное приложение считаетя самым трудаёмким

Нативное приложение ещё называют собственным.

Пример: приложения которые встроены в андроид из коробки, и некоторые которые устанавливают с магазина Galaxy stor.

  • Телефон.
  • Контакты
  • Смс сообщения
  • Камера
  • Галерея
  • Часы
  • Календарь
  • Мои файлы
  • Радио
  • Калькулятор
  • Samsung Music (есть только в Galaxy stor)
  • Samsung Notes
  • Звукозапись (диктофон)
  • Приложение Настройки

И так далее.

То есть, чаще всего, это как бы системные приложения.

Ещё вы можете перейти по пути:

НастройкиПриложенияНастройки приложений samsung, и увидеть ещё несколько приложений от фирмы, которые есть на телефонах марки samsung

Эти приложения тоже можно назвать нативными, потому что их нет в устройствах от фирмы Apple.

Примеры для ios

Аналоги приложений с телефона до калькулятора что я привёл выше. Только для устройств от Apple.

Примеры для Windows Phone

Аналоги приложений с телефона до калькулятора что я привёл выше. Только для устройств от Microsoft

Как понять что приложение точно нативное

Единственный способ это понять. ГУГЛИТЬ в интернете.

Если приложение допустим написано на языке swift, оно точно нативное.

А точно тебе скажет только тот кто писал это приложение.

Поэтому пиши в почту технической поддержки нужного тебе приложения, и задавай им вопрос:

Уважаемые разработчики

Ваше приложение к какому виду приложений относится?

Веб, нативное гибридное

А если оно веб то какое: SPA, MPA PWA

Может ответят.

В Комментарии Google Play писать не подходит, потому что тех поддержка приложения в самом Google Play редко знает ответ.

И ты чаще всего получишь такой ответ.

Поэтому нужно писать на электронную почту разработчика.

Переходишь в раздел «связь с разработчиком».

Нажимаешь на пункт «электронная почта» Выбираешь какое приложение почты открыть лучше gmail

-68

Вводишь текст что я привёл выше

-69

Отправляешь и ждёшь ответа, может ответят хотя врятли, но попробовать стоит.

Гибридное приложение

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

Цена разработки зависит от того, насколько такое приложение близко к нативному.

Чем ближе к нативному тем дороже.

Минусы

1. внешний вид, не изменяться в зависимости от мобильной платформы;

2. дополнительную информацию приложение скачивает из интернета.

3. сложный процесс оптимизации под разные размеры экранов;

4. разработка некоторых компонентов (нужно писать новый дополнительный контент для приложения)

Плюсы такие же как у нативного приложения

Отличие в том что:

Есть автономный режим работы.

1. Пользователь может выбрать режим работы с интернетом или без интернета.

Это называется онлайн или офлайн режим

Иногда его называют автономный режим работы.

2. Если приложение не получает доступ в интернету оно может само перейти в офлайн режим

Сообщив вам об этом (если это сообщение предусмотрено разработчиком).

-71

3. Приложение загружается на телефоны и планшеты как нативные приложения из магазина приложений,

Примеры гибридных приложений

Яндекс переводчик Google переводчик и тд.

Словарь Lingvo, Русско-Английский словарь и тд.

Google карты, яндекс карты, 2 ГИС: Карты и навигатор офлайн, Maps.me: Offline maps GPS Nav и тд.

Приложения сотовых операторов: мегафон, билайн, МТС и тд.

Кроссплатформенное приложение– это приложение которое способно запускаться и работать на разных платформах (Телефон, компьютер и тд) И операционных системах (Андроид windows и тд.)

И сразу комент в пику:

-72

Да я знаю платформа это не только ОС

Я стараюсь объяснять в общих чертах чтобы любой понял

А то иш умников развилось. Объясняют так, что ни хрена непонятно.

А потом ты сидишь и думаешь что тут всё сложно и без бутылки тут не разберёшься.

Ну да ладно, минутка возмущения.

Частый Пример кроссплатформенного приложения

В основном кроссплатформенные приложения это мобильные игры.

В которые ты, листатель мой, играешь на своём телефоне планшете или «компудаторе».

Но не только.

Смысл кроссплатформенных приложений и программ

Нам на уроках объясняли так:

Программист пишет код игры 1раз, и в игровом движке на этапе сборки игры в один файл, в настройках проекта ставит галочку:

1. для windows (компьютеры)

2. для Android (телефоны самсунг и другие)

3. для ios (телефоны iphone)

На выходе получается 3 файла с разными форматами (.exe .apk .ipa)

Тоже самое и с игровой приставкой

Если программист пишет кроссплатформенную программу, то ему не нужно писать её три раза под разные устройства.

Вот в этом и смысл.

Ну а кто не верит можете зайти в мою телеграмм группу и посмотреть конспект который я когда-то давно писал со слов учителя

Ссылка

Раз уж мы заговорили о играх то наверное стоит упомянуть что такое «Кроссплатформенная игра»

Это игра которая даёт людям возможность играть в неё на разных устройствах друг с другом одновременно.

Будь то телефон, планшет ноутбук, компьютер или игровая приставка. Да хоть телевизор

При этом игроки могут добавлять друг друга в друзья по игре.

И они сильно не чувствуют разницы во время процесса игры, и играют также как все.

Хотя эта разница может быть заметна.

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

Плюсы кроссплатформенных программ.

  1. Способность работы на разных устройствах.
  2. Приложение выходит сразу для нескольких платформ.
  3. При выходе новой версии приложения обновление получат почти сразу несколько платформ.
  4. Не нужно писать несколько версий приложения.
  5. Легче и дешевле поддерживать потому что вкладываешь деньги в одно приложение
  6. Пользователи получат одинаковый внешний вид приложения
  7. Программистам проще обмениваться кодами друг с другом и между разными версиями приложений, так как код один.(единая базовая база)
  8. Можно использовать фреймворки.

Минусы кроссплатформенных программ.

1. Требовательны к ресурсам устройства, нужен современный актуальный телефон планшет или ПК.

2. Батарейка устройства садится быстрее

3. Программист должен знать особенности работы устройств под которые он пишет приложение.

4. Программист должен знать инструменты фреймворк и API

5. Дополнительные траты на настройку работы на разных платформах.

То есть нужно проверять как приложение работает на разных устройствах подгонять картинку и кнопки на экране под размер экрана и тд.

Этот процесс называется оптимизация.

Примеры кроссплатформенных приложений

1. Мобильные и компьютерные игры:

(PUBG, World of tanks, Warface)

2. Браузеры: Опера Google fireFox и тд

3. Россельхоз банк

4. Дикси

5. Discord

6. Spotify: музыка и подкасты

7. Skype

По поводу игр, открой магазин Google play market набери в поисковой строке «кроссплатформенные игры» и у тебя будет список таких игр.

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

Может тебе пригодится держи.

Помнишь я показывал табличку приложений? (Схему 1)

Так вот, Если говорить только о мобильных устройствах, то полная схема выглядит так.

-75

А самая полная схема видов, выглядит так:

-76
Ну как, осознал сею ситуёвину?

Перейдём к другой классификации

По значимости приложения

Тут уже попроще.

-77

Есть три вида приложений:

1. Системные

2. Предустановленные

3. Пользовательские

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

Удалять их нельзя, они нужны для работы основных функций телефона.(Звонить писать смс сообщения и тд).

Их можно удалить поставив рут права.

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

Предустановленные приложения- это приложения которые установил производитель мобильного устройства они не влияют на работу ОС и устройства

Пример: Когда ты только купил телефон то можешь увидеть

Яндекс радио 2гис Дзен

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

Такие приложения удалять можно.

Важно!!!

У дешёвых китайских телефонов некоторые предустановленные приложения которыми ты не пользуешься могут быть системными.

Их можно удалить только с помощью рут прав.

Не экономь на телефонах покупай нормальный.

Классификация по предназначению приложения

Это значит для чего собственно приложение придумали.

Я напишу основное просто списком их там много:

1. Мобильные игры

2. Социальные сети

3. Размещение видео

4. Приложения банков

5. Интернет кошельки

6. Сотовых операторов

7. Интернет магазины

8. транспорт путешествия навигация

9. Приложения аналогичные приложениям которые стандартно есть в телефоне

10. Приложения для работы над фото видео и музыкой

11. Музыкальные инструменты

12. Приложения имитирующие звуки разных вещей из жизни.

13. Словари и переводчики

14. Для учёбы

15. Приложения офисных пакетов.

16. Для хранения файлов в интернете

17. Рисование/3D моделирование/дизайн

18. Для создания игр

19. Для получения тех. характеристик и обслуживание телефона

20. Антивирусные приложения

21. Для показа ТВ программ

22. Для прослушивания радио и музыки.

23. Для ЖКХ гос. услуг налогов.

24. Для разных профессий

25. Для здоровья

26. Голосовые помощники

27. Контроль за домом

28. Для управления вещей и устройств с телефона.

По доступности контента в приложении.

На уроках мы рисовали такую схему:

-78

И нам объясняли просто/ Что приложения могут быть:

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

чтобы получить право на его установку.

На примере платной игры FoxOne Advanced Edition из магазина Google Play

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

Внутри неё всё содержимое игры бесплатно, и за него нужно платить и нет рекламы.

Но есть игры, которые ты вроде как купил, но при этом часть содержимого игры платное и есть реклама.

Например: Live or Die: Survival pro

Хотя сейчас в 2022 году, российским пользователям платные игры и приложения нельзя скачивать и устанавливать, даже если они были куплены раньше.

Как говорил бог ютуба Izzy Laif

Разумеется после того, как что-то случилась.

Бесплатные - программы и приложения за установку и использование которых не нужно платить разработчику или правообладателю.

В таких приложениях часто встречаются внутренние покупки (Донат).

На примере игры Last Day on Earth: Survival

Но покупок может и не быть, это по желанию разработчииков.

Условно бесплатные — программы и приложения за установку которых, не нужно платить.

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

Обычно это :

7 дней

30 дней

365 дней

Время бесплатного периода зависит от желания разработчика: сколько хочет, столько и ставит.

Оно может быть и несколько минут.

Когда время бесплатного использования программы заканчивается

Она требует купить полную версию себя или купить и ввести лицензионный ключ к в специальное поле.

Который нужно покупать отдельно.

Это всё относится и к тем приложениям которые я перечислил в списке выше

Так как есть платные бесплатные и условно-бесплатные аналоги.

Мы еще рисовали такую табличку

-79

Итог

По итогу можно сказать

Что в интернете информация есть на эту тему, но она разбросана по разным местам.

И ты в общем целую картинку не видишь

Вот мне, чтобы написать свою статью на эту тему, а писал я её несколько месяцев. Со 2 Августа по 31 декабря 2022 года.

-80

Пришлось зайти и прочитать примерно 500 сайтов, смотреть видео, читать книги и тд.

-81

Даже Яндекс уже показывает знак бесконечность.

-82

Ё моё, уже 31 декабря блин, как быстро время то летит!!!

Вот знаешь, смотришь на это всё и думаешь: КАК ТЕМ КТО УЧИТСЯ А? Им же приходится так же сидеть, и искать информацию в интернете.

И на этом фоне, я считаю ОСОБЕННО забавным, вот этот комент.

Или ещё хлеще.
-84

Вот люди, что с вами случилась. Гугл и интернет знают не все ответы, и вы что читать книжки разучились что ли?

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

Вот сколько я нагуглил и прочитал.

-85

Именно поэтому в моём блоге не так часто выходят статьи.

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

Как бог ютуба Изя.

Благодарность

Изе, БОГУ ЮТУБА с канала Izzy Laif.

За видео: Как установить российские сертификаты Минцифры на любое устройство.

-86

ссылка на видео

И игровому каналу творческой Ортели oTrip.ru

А именно ведущим: Константину и стажёру Галине.

-88

Всех с новым годом!

Лайк, подписка, бубенцы.

#Мобильное приложение, приложение, Виды мобильных приложений, таблица плюсов минусов мобильных приложений, таблица видов приложений по доступности контента, классификация видов приложений, Веб-приложение Нативное приложение, Гибридное приложение, Кроссплатформенное приложение, как работает мобильное приложения.