Разработка web-приложения для продажи фермерских товаров | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 28 декабря, печатный экземпляр отправим 1 января.

Опубликовать статью в журнале

Авторы: ,

Научный руководитель:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №17 (412) апрель 2022 г.

Дата публикации: 27.04.2022

Статья просмотрена: 289 раз

Библиографическое описание:

Гнибеда, А. Ю. Разработка web-приложения для продажи фермерских товаров / А. Ю. Гнибеда, О. М. Жиленкова. — Текст : непосредственный // Молодой ученый. — 2022. — № 17 (412). — С. 353-357. — URL: https://moluch.ru/archive/412/90800/ (дата обращения: 17.12.2024).



В статье авторы описывают процесс создания и принцип работы нового интернет-магазина для продажи фермерских товаров «Просёлок».

Ключевые слова: сайт, интернет-магазин, PHP, MVC, Laravel.

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

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

Для решения данной проблемы выберем современный подход. Инновации в сфере IT-технологий являются неотъемлемой частью современного общества. Автоматизация давно прочно вошла во многие области деятельности человека, в частности она продолжает активно внедряться и развиваться в сфере предпринимательства, как частного, так и индивидуального. Постоянно увеличивается конкуренция в предложениях услуг предпринимателей, тем самым, создавая предпосылки к развитию IT-технологий для разработки сайтов.

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

На данный момент уже существуют интернет-магазины, торгующие натуральными товарами фермерского производства. Это «Sreda», «Ешь деревенское», «Лукино», «Владимирская Мещера».

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

В интернет-магазинах (Sreda [6] и «Владимирская Мещера» [9]) отсутствует личный профиль, и система отзывов, в результате чего не может быть доступна информация о текущих заказах и ранее сделанных покупках, а также возможность оставить отзыв.

У «Ешь деревенское» [7] избыточное разнообразие ассортимента, а при оформлении заказа могут происходить сбои, сообщения приходят не сразу или не приходят совсем.

«Лукино» [8] и «Владимирская Мещера» имеют всего одну точку, что создает много трудностей с доставкой и сохранностью товаров и сильно ограничивает число производителей, которые хотят продать свой товар.

Разработанное веб-приложение содержит все достоинства аналогов и устраняет выявленные недостатки. Основными преимуществами нового веб-приложения являются:

– личный кабинет для покупателя;

– возможность просматривать отзывы и оставлять их, написать и отправить их может только зарегистрированный покупатель;

– функционал лаконичный, без излишеств;

– направлен исключительно на продажу еды;

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

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

– яркий, но лаконичный дизайн;

– тематическое оформление;

– быстрая адаптации пользователя на сайте;

– отсутствие отвлекающей, ненужной информации;

– полезные ссылки;

– полезные контакты;

Языком программирования для разработки нового веб-приложения был выбран PHP с использованием фреймворка Laravel. Затем проводилось сравнение двух наиболее популярных сред для разработки: NetBeans [11] и PhpStorm [12]. По результатам анализа, выбор был сделан в пользу PhpStorm, так как существует ее бесплатная версия для обучающихся, она удобна при модификации кода, также имеет все необходимые инструменты для эффективного тестирования и отладки.

Графический интерфейс пользователя тоже разрабатывался с помощью Laravel, а также с применением шаблонизатора Blade.

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

На рис. 1 изображена схема жизненного цикла запроса в Laravel.

Схема жизненного цикла запроса в Laravel [13]

Рис 1. Схема жизненного цикла запроса в Laravel [13]

На схеме можно увидеть взаимодействие между программными модулями, которое происходит в соответствии с паттерном MVC (Model-View-Controller).

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

На рис. 2 представлен фрагмент схемы алгоритма работы интернет-магазина.

Фрагмент схемы алгоритма работы интернет-магазина

Рис. 2. Фрагмент схемы алгоритма работы интернет-магазина

Вверху схемы хорошо заметен фрагмент главного меню сайта. Адреса страниц, между которыми осуществляются переходы, прописаны в маршрутах (routes), в них же указано, какой при этом должен выполниться метод в соответствующем контроллере (controller). Например, главная страница имеет адрес «/», имя соответствующего маршрута — index, а метод index, который при этом выполнится, прописан в контроллере MainController и отвечает за загрузку категорий товаров из базы данных на главную страницу.

Методы для отправки запросов в БД об изменении количества товаров в корзине или оформлении заказа тоже прописаны в контроллерах. Они служат для связывания действий, совершаемых пользователем и операций, происходящих в серверной части программы. MainController загружает данные на ключевые страницы сайт, такие как главная, страница с категорией, личный профиль, результаты поиска, страницы с информацией. Это список категорий, общая информация о магазине и о том, как им пользоваться, о производителях и особенностях доставки и оплаты. BasketController отвечает за выполнения действий в корзине, добавление товара, удаление, изменение количества позиций. LoginController и RegisterController являются встроенными классами, в них прописана логика для осуществления авторизации и регистрации пользователя.

Каждая сущность в БД представляет собой класс-модель (models) со своими свойствами и методами, совершающими, к примеру, подсчеты стоимости текущего заказа или количества товаров в корзине или же возвращающие некоторые свойства объекта-модели, например, для товара (класс Product) его категорию (метод category()).

На схеме представлен обобщенный алгоритм авторизации и регистрации покупателя. Действия проверки на авторизованность совершаются посредником (middleware) Authentication и вызываются при переходе по тому или иному маршруту.

После того, как метод выполнится, данные, которые были при этом получены отправляются тем же контроллером в представление (view) и размещаются в полях страницы для отображения пользователю. Например, список категорий, список и количество товаров в корзине для текущего пользователя, стоимость заказа, полученные контроллером BasketController, пользователь может наблюдать в представлении basket (корзина) и в свою очередь отправлять новые запросы при помощи данного интерфейса (удаление товаров в корзине или изменение их количества) или переходить к другому представлению, то есть на другую страницу сайта, куда другим контроллером будут подгружены уже новые данные.

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

Результат работы программы. Переход между страницами

Рис. 3. Результат работы программы. Переход между страницами

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

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

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

Литература:

  1. Осипов Д. Технологии проектирования баз данных. — М.: ДМК Пресс, 2019.
  2. Адель Ф. Архитектура сложных веб приложений. С примерами на Laravel. Издательство: Leanpub 2020.
  3. Кристофер Питт. Pro PHP 8 MVC: Model View Controller Architecture-Driven Application Development. Издательство: Apres 2012.
  4. Мэтт Стаффер. Laravel Полное руководство. 2-е изд. — СПб.: Питер, 2020.
  5. Янк К. PHP & MySQL Novice to Ninja. — М.: Эксмо, 2013.
  6. Интернет-магазин — Sreda [Электронный ресурс] // sreda: [сайт]. URL: https://www.sreda-one.com/.
  7. Интернет-магазин — Ешь деревенское [Электронный ресурс] // esh-derevenskoe: [сайт]. URL: https://esh-derevenskoe.ru/.
  8. Интернет-магазин — Лукино [Электронный ресурс] // lukino: [сайт]. URL: https://lukino.ru/.
  9. Интернет-магазин — Владимирская Мещера [Электронный ресурс] // svinopas-ru: [сайт]. URL: http://svinopas-ru.ru/.
  10. Documentation (Laravel 8.x) [Электронный ресурс] // Laravel: [сайт]. URL: https://laravel.su/docs/8.x/documentation.
  11. Быстрое учебное руководство по PHP IDE NetBeans [Электронный ресурс] // netbeans.apache: [сайт]. URL: https://netbeans.apache.org/kb/docs/php/quickstart_ru.html.
  12. PhpStorm [Электронный ресурс] // Wikipedia: [сайт]. URL: https://ru.wikipedia.org/wiki/PhpStorm.
  13. Laravel Request Lifecycle [Электронный ресурс] // practicaldev-herokuapp-com: [сайт]. URL: https://practicaldev-herokuapp-com.global.ssl.fastly.net/patelparixit07/laravel-request-lifecycle-195e.
Основные термины (генерируются автоматически): MVC, PHP, главная страница, оформление заказа, корзина, товар, добавление товара, жизненный цикл запроса, личный профиль, результат работы программы.


Ключевые слова

MVC, сайт, интернет-магазин, PHP, Laravel

Похожие статьи

Универсальный Telegram-бот для магазина розничной торговли

В статье автор описывает принципы работы универсального Telegram-бота для магазина розничной торговли.

Разработка мобильного мультиплатформенного приложения аренды недвижимости

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

Справочник ресурсов для размещения на корпоративном сайте

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

Обзор сервиса для разработки дистанционных образовательных ресурсов «Google Класс»

В статье выполнен краткий обзор сервиса разработки дистанционных образовательных ресурсов «Google Класс». Описаны основные возможности и элементы интерфейса приложения «Google Класс».

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

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

Основные функция веб-приложения с учетом анализа современных CMS-систем

В работе проведен анализ современных коммерческих и свободно распространяемых CMS-систем, описана структура разработанного веб-приложения на основе фреймворка Zend Framework и его база данных.

Использование платформы Umaigra в работе с учащимися на уроках литературы

Исследование темы посвящено описанию возможностей приложения Umaigra на уроках литературы для подготовки задания. Дана инструкция по применению. Описаны возможности, эффективная работа и быстрота электронного приложения. Приведен пример разработки за...

Разработка клиент-серверного приложения для записи на услуги барбершопов

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

Исследование технологии дополненной реальности для создания мобильного AR приложения

В статье авторы исследуют возможности дополненной реальности для создания мобильного приложения, помогающего гостям и туристам лучше узнать город. Описаны этапы создания «GidApp Aktobe».

Разработка веб-сервиса для интерактивного создания чат-ботов

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

Похожие статьи

Универсальный Telegram-бот для магазина розничной торговли

В статье автор описывает принципы работы универсального Telegram-бота для магазина розничной торговли.

Разработка мобильного мультиплатформенного приложения аренды недвижимости

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

Справочник ресурсов для размещения на корпоративном сайте

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

Обзор сервиса для разработки дистанционных образовательных ресурсов «Google Класс»

В статье выполнен краткий обзор сервиса разработки дистанционных образовательных ресурсов «Google Класс». Описаны основные возможности и элементы интерфейса приложения «Google Класс».

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

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

Основные функция веб-приложения с учетом анализа современных CMS-систем

В работе проведен анализ современных коммерческих и свободно распространяемых CMS-систем, описана структура разработанного веб-приложения на основе фреймворка Zend Framework и его база данных.

Использование платформы Umaigra в работе с учащимися на уроках литературы

Исследование темы посвящено описанию возможностей приложения Umaigra на уроках литературы для подготовки задания. Дана инструкция по применению. Описаны возможности, эффективная работа и быстрота электронного приложения. Приведен пример разработки за...

Разработка клиент-серверного приложения для записи на услуги барбершопов

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

Исследование технологии дополненной реальности для создания мобильного AR приложения

В статье авторы исследуют возможности дополненной реальности для создания мобильного приложения, помогающего гостям и туристам лучше узнать город. Описаны этапы создания «GidApp Aktobe».

Разработка веб-сервиса для интерактивного создания чат-ботов

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

Задать вопрос