Деревенец, Дудкин. Испокон веков человек испытывал много трудностей, связанных с жизнедеятельностью, но основной проблемой всегда была добыча пропитания. Люди тратили большое количество времени на приготовление пищи
Скачать 2.95 Mb.
|
2.3 Выбор системы для разработкиВ качестве среды разработки была выбрана Android Studio, а из языков программирования Java в связке с PHP. Чтобы лучше понимать принципы разработки, нужно понимать, для какой программной платформы мы собираемся разрабатывать приложение, для этого нам нужно лучше знать операционную систему Android. Операционная система Android для смартфонов, интернет-планшетов, электронных книг, цифровых плееров, наручных часов, игровых консолей, нетбуков, смартбуков, очков Google, телевизоров и других устройств. Автомобили и бытовые роботы будут поддерживаться в будущем. На основе ядра Linux и собственной реализации виртуальной машины Java от Google. Первоначально он был разработан компанией Android, Inc., которая затем была куплена Google. Впоследствии Google начал создание OpenHandsetAlliance (OHA), который сейчас поддерживает и развивает платформу. Android позволяет создавать Java-приложения, управляющие устройством через библиотеки Google. AndroidNativeDevelopmentKit позволяет портировать библиотеки и компоненты приложений, написанные на C и других языках. 2.4 Выбор клиент-серверной архитектурыАрхитектура «клиент-сервер» (также известная как «сеть клиент-сервер» или «модель клиент-сервер») подразумевает разделение различных процессов предоставления услуг и отправки запросов на них на разные компьютеры в сети, каждый из которых выполняет свои задачи независимо от других. Одноуровневая архитектура «клиент-сервер» – такая, где все основные функции программы распределены по рабочим устройствам, которые будут обращаться за данными к серверу. Никаких основных функция программ сервер не выполняет, только является хранилищем данных (Рис.2.1). Рисунок 2.1. Одноуровневая клиент-серверная архитектура Данная архитектура обладает высокой надёжностью, но сложна в управлении, потому что данные будут присутствовать в каждой станции и разных вариантах. Только из-за этого появляется проблема в их синхронизации на отдельных устройствах и их загруженности. Двухзвенная архитектура «клиент-сервер» – это архитектура, в которой распределение трех базовых компонентов осуществляется между клиентом и сервером. Данная архитектура используется в клиент-серверных системах, где серверу необходимо отвечать на клиентские запросы напрямую и в полном объеме, при этом используя только собственные ресурсы, не вызывая сторонних сетевых приложений и не обращаясь к сторонним ресурсам для выполнения какого-либо запроса. Проще говоря сервер выполняет все запросы клиента (Рис.2.2). Рисунок 2.2. Двухзвенная клиент-серверная архитектура Такая архитектура является максимально логичной для разработки. Из неё можно проявить два варианта проектирования. В первом варианте логика обработки и основные данные хранятся на клиенте, а общие данные на сервере, такая архитектура называется «толстый клиент, тонкий сервер». Если на сервере хранятся и логика обработки, и данные, то архитектура называется «тонкий клиент, толстый сервер». Многоуровневая архитектура – это архитектура, в которой несколько серверов вычислений работают, основываясь на результатах друг друга получая данные из сервера баз данных (Рис. 2.3) Рисунок 2.3. Многоуровневая клиент-серверная архитектура В нашем приложении будет осуществлена двухзвенная клиент-серверная архитектура, так как она более оптимальна для разработки приложения подобного рода. На стороне сервера хранятся данные об аккаунтах клиентов (Account). В этот раздел входят: данные о банковских картах, забронированные товары клиента, избранное и выполненные заказы. Так же на сервере хранятся Id номера пользователей (Id) и зашифрованные пароли (pass). В данных о продукции (prod) хранится список всей продукции, пользовательский рейтинг и отзывы о продуктах. В данных о сырье (stock) хранятся списки доступного сырья и списки использованного сырья. Если со стороны владельца поступает определенный запрос на сервер, то приложение может составить документ на закупку сырья забронированной продукции (Таб.1). Таблица 1. Данные сервера
|