ВВЕДЕНИЕ 3
1. Технологии, используемые при разработке 4
1.1. Общие технологии для всего проекта 4
1.2. Технологии серверного приложения 5
1.3. Технологии клиентского приложения 5
2. Разработка веб-приложения для учета записей пациентов
поликлиники 6
2.1. Анализ требований и разработка архитектуры приложения 6
2.2. Разработка сервера. Слой доступа к данным (DAL) 9
2.3. Разработка сервера. Слой бизнес-логики (BLL) 13
2.4. Разработка клиентского приложения 16
2.5. Основные компоненты, реализованные в приложении 23
ЗАКЛЮЧЕНИЕ 31
СПИСОК ЛИТЕРАТУРЫ 32
ПРИЛОЖЕНИЕ 33
В настоящее время использование современных технологий помогает решать множество рутинных задач таким образом, что мы не только экономим время, но и исключаем возможные ошибки, являющиеся следствием человеческого фактора, который свойственен нам всем. Такая сфера деятельности, как ведение учёта пациентов в поликлинике требует максимальной точности, надежности хранения информации, и быстрого и удобного доступа к хранящейся информации. С подобной задачей отлично справляются современные веб-приложения. Одно из таких демонстрируется в данной работе.
Целью выпускной квалификационной работы является разработка удобного решения для ведения учёта информации о пациентах поликлиники. Таким образом, объектом исследования является разработка современного клиент-серверного SPA (Single Page Application- одностраничное приложение), а предметом исследования - технологии, отвечающие этим современным требованиям.
Для реализации поставленной цели были решены следующие задачи:
1. Анализ требований и разработка архитектуры приложения.
2. Разработка сервера. Слой доступа к данным (DAL).
3. Разработка сервера. Слой бизнес-логики (BLL).
4. Разработка клиентского приложения.
Выпускная работа состоит из введения, двух глав, освещающих теоретическую и практическую часть разработки приложения, заключения, списка литературы и исходного кода.
1. Технологии, используемые при разработке
1.1. Общие технологии для всего проекта
Visual Studio Code - кроссплатформенный редактор исходного кода разработанный компанией Мзшшойдля Windows, Linux и mac OS. Является «лёгким» и невероятно гибким редактором кода для разработки абсолютно любых приложений, поскольку может быть дополнен плагинами для большинства популярных языков программирования (рисунок 1). Особенности VS Code:
- широкие возможности кастомизации (пользовательские темы, сочетания клавиш и файлы конфигурации);
- бесплатное распространение;
- открытый исходный код;
- поддержка широкого ряда языков программирования;
- подсветка синтаксиса;
- IntelliSense (технология автодополнения названий функций);
- рефакторинг;
- отладка;
- поддержка Gi;
- встроенный мультиоконный терминал.
: Conpiled successfully.
: Conpiled successfully.
10, Col 35 Spaces: 2
Рисунок 1 - Окно Visual Studio Code
1.2. Технологии серверного приложения
ASP.NET Core Web API - это способ построения веб-приложения специально нацеленный на работу приложения в стиле REST (Representation State ТгашЬегили «передача состояния представления»).
REST-архитектура подразумевает применение следующих методов или типов HTTP-запросов для взаимодействия с сервером:
- GET;
- POST;
- PUT;
- DELETE.
Зачастую REST-стиль особенно удобен при создании всякого рода Single Page Application, которые нередко используют специальные javascript-фреймворки типа Angular, React или Knockout [1]. По сути Web API представляет собой веб-службу, к которой могут обращаться другие приложения. Причем эти приложения могут представлять любую технологию и платформу - это могут быть веб-приложения, мобильные или десктопные клиенты.
1.3. Технологии клиентского приложения
Angular - это открытая и свободная платформа для разработки вебприложений, написанная на языке TypeScript, разрабатываемая командой из компании Google, а также сообществом разработчиков из различных компаний.
2. Разработка веб-приложения для учета записей пациентов
поликлиники
2.1. Анализ требований и разработка архитектуры приложения
Разрабатываемое приложение разделено на 2 независимых проекта: клиенское приложение и серверное.
Клиентское приложение отвечает за пользовательское взаимодействие и является графическим веб-интерфейсом, способным при определенных действиях отправлять запрос к серверному приложению.
Серверное приложение отвечает за приём HTTP-запросов, их обработку, а также за операции с данными и за отправку результатов на запросы.
В приложении определены пользовательские роли: регистратор и врач. Каждая роль накладывает свои ограничения.
Регистратору доступно:
- регистрация пациентов в базе;
- просмотр заявок пациентов;
- прием оплаты с пациентов за оказанные услуги.
Врачу доступно:
- добавление доступных медицинских услуг;
- запись пациентов на прием к врачу;
- просмотр заявок пациентов;
- редактирование заявок.
Помимо того, что приложение разделено на два уровня (клиентское приложение и серверное), оно так же имеет и раздельные логические уровни (layers), определенные в серверном приложении.
Трехуровневая архитектура (рисунок 2).
В классическом представлении архитектуры приложения имеется три слоя: Presentation Layer, Business Layer и Data Access Layer.
Presentation Layer (PL) - уровень представления. Это уровень, с которым непосредственно взаимодействует пользователь. Здесь располагаются компоненты пользовательского интерфейса и механизм получения ввода от пользователя.
Business Layer (BLL) - уровень бизнес-логики. На этом уровне выполняется обработка полученных с PL данных, вычисление, взаимодействие с DAL и возврат результата обратно на PL.
Data Access Layer (DAL) - уровень доступа к данным. Логически отделённый слой серверного приложения, отвечающий за низкуровненую работу с информацией в базе данных (создание, чтение, изменение и удаление) [2].
В рамках данной выпускной квалификационной работы было разработано клиент-серверное одностраничное приложение (SPA), в котором использованы следующие технологии:
- ASP.NET Core c шаблоном Web API для создания серверного приложения;
- Entity Framework Core для объектного взаимодействия с базой данных;
- Angular 7.2.0 для создания клиентского приложения.
При разработке приложение были применены популярные архитектурные паттерны, которые используются в реально существующих программных решениях от простого интернет-магазина, до системы бухгалтерского учета Российской федерации.
Все примененные шаблоны проектирования наделили разработанное приложение следующими приемуществами:
- гибкость архитектуры;
- взаимозаменяемость компонентов;
- независимость отдельных частей приложения;
- легкая поддержка и внесение изменений.
Разработанное в ходе написания дипломной работы приложение способно упростить ведение учёта пациентов в медицинских учреждениях, предоставляя интуитивно понятный и удобный пользовательский интерфейс, а также надежность хранения данных в цифровом формате в базе данных.
1. ASP.NET Web API 2: Building a REST Service from Start to Finish [Электронный ресурс] - Режим доступа: https://www.amazon.com/ASP-NET- Web-API-Building-Service/dp/1484201108 (дата обращения: 02.04.2019).
2. Microsoft Developer Network — подразделение компании Майкрософт, ответственное за взаимодействие фирмы с разработчиками [Электронный ресурс] - Режим доступа: https://msdn.microsoft.com/ru-m (дата обращения:
20.04.2019) .
3. Metanit.com - Руководство по ASP.NET Core 2 [Электронный ресурс] -
Режим доступа: https://metanit.com/sharp/aspnet5 (дата обращения:
03.05.2019) .
4. Официальное руководство по Entity Framework Core [Электронный ресурс] - Режим доступа: https://entityframeworkcore.com/overview (дата обращения: 04.05.2019).
5. Руководство начинающего разработчика Angular [Электронный ресурс] - Режим доступа: https://angular.io/tutorial (дата обращения:
10.05.2019) .