Главная » Просмотр файлов » Пояснительная записка

Пояснительная записка (1209803), страница 2

Файл №1209803 Пояснительная записка (Разработка программного модуля защиты информации на съёмных машинных носителях) 2 страницаПояснительная записка (1209803) страница 22020-10-04СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

2 Теоретические аспекты реализуемых функций

2.1 Технология взаимодействия с базой данных

В большинстве случаев для взаимодействия с базой данных SQL применяется SQL запросы и хранимые процедуры SQL. Данный подход представляет построение строковых запросов в приложении и получение результатов в виде таблиц DataTable. Для более удобного и упрошенного взаимодействия с базой данных была разработана технология Entity Framework. На рисунке 2.1 представлена общая архитектура .NET Framework.

Рисунок 2.1 – Архитектура .NET Framework

Entity Framework представляет из себя ORM решением для обеспечения объектно-ориентированного взаимодействия с базой данных. Разработана компанией Microsoft для платформы .NET Framework. Технология была основана на ADO.NET и позволила в разы облегчить взаимодействие между базой данных и кодом приложения, за счет готовых инструментов и подходов к взаимодействию с базой данных на уровне объектов. Это позволило более абстрагироваться от использования хранимых процедур SQL кода и обмена данными базы с приложением по средствам DataTable. Релиз данного решения состоялся 11 августа 2008 года.

На рисунке 2.1 представлено расположение Entity Framework в составе архитектуры .NET Framework.

Данная технология предоставляет возможность осуществить взаимодействие с базой данных через объекты классов C#. Она может применятся в проектах на базе технологий MCV, MVP, Windows forms, Console application, а также в class library.

Поддерживает три подхода к построению модели данных:

  • database-First – позволяет автоматизировать процесс создания модели базы данных в приложении на основе уже готовой SQL базы данных. Генерирует визуальную модель данных (EDMX), что обеспечивает удобство взаимодействия и настройки базы данных по средствам графического интерфейса. Для использования данного подхода необходимо знать язык T-SQL для изначального создания основных элементов базы данных;

  • model-First – позволяет реализовать модель базы данных с помощью визуальной модели. После генерации модели, на её основе можно сгенерировать таблицы и связи в базе данных;

  • code-First – подход, позволяющий более гибко настроить необходимые параметры объектов модели за счет написания кода моделей вручную. Данный подход позволяет модифицировать поля классов фильтрами (атрибутами) для явного указания типа данных представленного в самой базе данных, ключевых полей, имен таблиц и т.д. После написания модели следует выполнить миграцию модели в базу данных.

Миграция – внесение изменений в базу данных на основе модели данных с учетом целостности исходных таблиц, сгенерированных ранее в базе данных.

Миграция выполняется следующими командами:

  • enable-Migration – создает конфигурацию миграции на основе контекста модели данных;

  • add-Migration nameOfMigration – создает новую миграцию, определяя какие таблицы были изменены, нарушат ли новые изменения целостность базы данных (если ранее уже были выполнены миграции);

  • update-Database – запускает процесс миграции подготовленных изменений модели, зафиксированных в созданной миграции, в базу данных.

На рисунке 2.2 представлена архитектура доступа и обращения к данным Entity Framework.

Рисунок 2.2 – Архитектура доступа к данным

Получение данных из базы происходит по средствам технологии LINQ запросов.

LINQ – язык запросов, реализованный в языках платформы .NET Framework, основанный на принципе построения SQL запросов. Позволяет осуществить поиск и выборку из любой коллекции данных.

На рисунке 2.1 представлено расположение LINQ в составе архитектуры .NET Framework.

В Entity Framework при использовании LINQ запроса, он конвертируется в SQL запрос, который вернет объект с полями связанных объектов. На рисунке 2.3 приведена схема модели данных для рассмотрения дальнейших примеров.

Рисунок 2.3 – Схема данных

На рисунке 2.4 изображено получение объекта при помощи LINQ запроса на примере схемы данных изображенной на рисунке 2.3:

Рисунок 2.4 – LINQ запрос

Для более легкого получения данных вместо LINQ запроса можно применить другой механизм .NET – лямбда-выражения.

На рисунке 2.5 изображено получение объекта при помощи лямбда выражения на примере схемы данных изображенной на рисунке 2.3:

Рисунок 2.5 – Лямбда-выражение

В некоторых случаях появляется необходимость использования SQL запросов. Entity Framework предоставляет возможность поучения объектов на основе SQL запроса.

На рисунке 2.6 изображено получение объекта при помощи SQL запроса на примере схемы данных изображенной на рисунке 2.3:

Рисунок 2.6 – SQL запрос

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

2.2 Технология пользовательского интерфейса

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

Для реализации пользовательского графического интерфейса выбрана технология Windows Forms.

Представляет механизм реализации графического интерфейса (API) для платформы Microsoft .NET Framework. Данная технология упрощает процесс реализации приложений с графическим интерфейсом для операционной системы Windows. Технология представляет из себя обертки для существующих функций визуализации Win32 API в управляемом коде. Сама технология позволяет использовать такие языки C#, C++, VB.Net, J# и другие. На рисунке 2.7 представлено расположение технологии Windows Forms в .NET Framework. Данная технология была задумана как замена более сложной и старой библиотеке MFC, которая изначально была реализована на языке C++.

Внутри платформы .NET Framework, Windows Forms была реализована в пространстве имен System.Windows.Forms. Для доступа к классам данной области видимости, необходимо либо явное обращение System.Windows.Forms.SelectedItem, либо необходимо прописать в одну из директив using указав в ней данное пространство имен, чтобы получилось using System.Windows.Forms.

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

Рисунок 2.7 – Архитектура .NET Framework

Для построения интерфейса в инструменте разработки Visual Studio предлагается удобный визуальный конструктор, приведенный на рисунке 2.8 и набор элементов, приведенный на рисунке 2.9.

Рисунок 2.8 – Конструктор Windows Forms

Рисунок 2.9 – Набор элементов

На рисунке 2.10 приведен пример интерфейса Windows Forms в операционной системе Windows 7.

Рисунок 2.10 – Интерфейс Windows Forms

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

2.3 Инструменты взаимодействия с системой Windows

В проекте есть необходимость взаимодействия с операционной системой Windows для возможности использования приложением flash – накопителей. Для реализации данного функционала выбрана технология WMI.

Технология WMI представляет из себя набор инструментов для взаимодействия с функциями операционной системы Windows, её мониторинга и внесения изменений при помощи объектов.

Данная технология является расширенной и адаптивной реализацией стандарта WBEM (WebBased Enterprise Management компании DMTF Inc) для операционной системы Windows.

Стандарт WBEM подразумевает универсальный интерфейс мониторинга и управления различными системными компонентами использующий объектно-ориентированный подход. В основе данного подхода лежит технология Common Information Model, реализующая представление компонентов операционной системы в виде объектов, с помощью которых можно получать информацию о тех или иных функциях операционной системы и внесения изменений в них. Сам WMI основан на Common Information Model.

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

На рисунке 2.11 приведена полная архитектура WMI.

Рисунок 2.11 – Архитектура WMI

Объекты WMI располагаются в директории:

«%SystemRoot%\System32\WBEM\Repository»

Так как WMI основа на принципе объектно-ориентированного похода, все ресурсы операционной системы представлены в виде объектов, их методов и свойств.

Основным средством, применяемым для описания новых объектов WMI, является текстовый язык MOF (Managed Object Format). Благодаря данному языку любое приложение, драйвер и служба системы, имеющие поддержку WBEM стандарта, имеет возможность добавить в системную модель CIM собственный набор классов. Такой подход позволяет расширить динамичность данной технологии и мониторинг различных функций приложений.

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

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

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

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

Характеристики

Список файлов ВКР

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
7031
Авторов
на СтудИзбе
260
Средний доход
с одного платного файла
Обучение Подробнее