Forráskód Böngészése

dock: Добавлена документация по серверной части

k1rakato 1 hónapja
szülő
commit
c03bdaeb5c

+ 163 - 0
Documents/Серверная часть приложения.docx

@@ -0,0 +1,163 @@
+Государственное бюджетное профессиональное образовательное учреждение
+       <<Нижегородский Губернский колледж>>
+                                  ОТЧЕТ
+    Разработка серверной части приложения
+   МДК 01.03 Разработка мобильных приложений
+                                       
+Руководитель: ____________________________Ю.С. Мамшева	                                                                                      19.10.2024г.
+
+Студент: ________________________________И.А. Большаков	                                                                                       19.10.2024г. 
+                                       
+Специальность, группа: 09.02.07,41П 
+
+
+
+
+
+
+
+
+
+
+                       г. Нижний Новгород
+                                    2024г.
+ Описание выбранной базы данных для серверной части
+   В качестве хранилища данных серверной части была выбрана Supabase.
+Использование Supabase при разработке мобильных приложений может предложить множество преимуществ, особенно для разработчиков, которым нужен функционал полноценной backend-платформы. Вот несколько ключевых плюсов:
+ Быстрая интеграция и простота использования
+ Supabase предоставляет готовый набор инструментов, который легко интегрируется в мобильные приложения через SDK и REST API. Это значительно упрощает процесс подключения backend-функционала.
+ Не требует ручного развертывания и настройки серверов, что позволяет разработчикам сосредоточиться на функционале приложения, а не инфраструктуре.
+ Реализованная база данных на основе PostgreSQL
+ Supabase использует PostgreSQL как основную базу данных, что обеспечивает надежность, производительность и масштабируемость.
+ Возможность использования SQL-запросов напрямую, что дает больше контроля и гибкости в работе с данными.
+ Реальное время
+ Поддержка реального времени: Supabase предоставляет возможность отправки данных и обновлений в реальном времени. Это особенно полезно для чатов, лайв-фидов, уведомлений и других функций, требующих мгновенной синхронизации данных между клиентами.
+ Авторизация и аутентификация
+ Встроенные решения для управления пользователями: Supabase поддерживает регистрацию, вход через соцсети (OAuth), управление ролями и разрешениями. Это экономит время на разработке собственного механизма аутентификации.
+ Безопасность пользователей обеспечивается благодаря встроенной поддержке JWT и других методов защиты данных.
+
+ Автоматическая генерация API
+ Supabase автоматически создает RESTful API на основе вашей схемы базы данных. Это упрощает доступ к данным и делает backend более доступным для различных платформ.
+ Можно гибко настроить права доступа к данным через роль-базированное управление.
+ Функции хранения файлов
+ Supabase предоставляет возможность хранения файлов (Supabase Storage), что позволяет хранить изображения, видео, документы и другие типы файлов. Это удобно для приложений, где требуется хранить пользовательские медиафайлы.
+ Расширяемость и функции
+ Возможность писать серверные функции и триггеры на языке SQL и PL/pgSQL. Это полезно для автоматизации бизнес-логики и создания более сложных функциональных решений.
+ Легко интегрируется с другими сторонними сервисами и API.
+ Отсутствие необходимости в управлении инфраструктурой
+ Supabase предлагает полностью управляемую инфраструктуру, что позволяет избежать забот о масштабировании серверов, настройке базы данных и других задачах, связанных с поддержанием backend.
+ Открытый исходный код
+ Supabase  --  это платформа с открытым исходным кодом, что предоставляет разработчикам больше свободы в изменении и адаптации сервиса под свои нужды.
+ Сообщество и вклад разработчиков в Supabase постоянно растет, что позволяет платформе развиваться и внедрять новые функции.
+
+
+
+ Описание основных сущностей
+                                                              Таблица 1 
+                        Список сущностей
+                                      №
+                               Название
+                             Назначение
+                                       1
+Users
+Информация о клиенте
+                                       2
+GenderTable
+Информация о записи 
+                                       3
+RoleTabler
+Описание состава сотрудников салона
+                                       4
+Plants
+Описание должности
+                                       5
+UserAndPlants
+Информация о списке услуг и их ценах
+
+   Для каждой таблицы (сущности) приведем описание ее атрибутов. Атрибут на физическом уровне  -  это колонки таблицы и выражает определенное свойство объекта.
+                                                               Таблица 2
+           Список атрибутов таблицы <<Users>>
+                           Ключевое поле
+                               Название
+                             Назначение
+ПК
+(первичный ключ)
+Код клиента
+Ключевое поле, предназначенное для однозначной идентификации каждой записи в таблице. Представляет собой первичный ключ. Это уникальное значение, соответствующее каждому пользователю.
+
+
+Name
+
+
+BirthDate
+
+
+GenderID
+
+                                       
+                                                               Таблица 3
+           Список атрибутов таблицы <<Plants>>
+                           Ключевое поле
+                               Название
+                             Назначение
+ПК
+(первичный ключ)
+Код растения
+Ключевое поле, предназначенное для однозначной идентификации каждой записи в таблице. Представляет собой первичный ключ. Это уникальное значение, соответствующее каждому растению.
+
+
+Title
+
+
+Description
+
+
+Recommendations
+
+
+GrowingSteps
+
+
+                                                               Таблица 4
+        Список атрибутов таблицы <<GenderTable>>
+                           Ключевое поле
+                               Название
+                             Назначение
+ПК
+(первичный ключ)
+Код пола
+Ключевое поле, предназначенное для однозначной идентификации каждой записи в таблице. Представляет собой первичный ключ. Это уникальное значение, соответствующее каждому полу.
+
+GebderTitle
+
+
+                                                               Таблица 5
+         Список атрибутов таблицы <<RoleTable>>
+                           Ключевое поле
+                               Название
+                             Назначение
+ПК
+(первичный ключ)
+Код роли
+Ключевое поле, предназначенное для однозначной идентификации каждой записи в таблице. Представляет собой первичный ключ. Это уникальное значение, соответствующее каждой роли.
+
+
+RoleTitle
+
+                                       
+
+                                                               Таблица 6
+       Список атрибутов таблицы <<UserAndPlants>>
+                           Ключевое поле
+                               Название
+                             Назначение
+
+Код растения
+
+
+Код пользователя
+
+
+
+                                       
+                  Рисунок 1  -  ER диаграмма