Главная страница

Реферат 1 Введение 3 Аналитическая часть 5


Скачать 1.24 Mb.
НазваниеРеферат 1 Введение 3 Аналитическая часть 5
Дата11.03.2018
Размер1.24 Mb.
Формат файлаdocx
Имя файлаdiplom_-_Copy_1_checked.docx
ТипРеферат
#38138
страница5 из 16
1   2   3   4   5   6   7   8   9   ...   16

Анализ литературы по реализации проекта в среде Visual Studio с использованием шаблона MVC с целью выявления методов разработки необходимых модулей в системе


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

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

Шаблоны проектирования — универсальные, многократно используемые решения, используемыми нами каждый день. Это не просто класс или библиотека, которые с легкостью мы сможем подключить в свой проект, это нечто большее. Это шаблон, который должен быть использован в нужной ситуации и почти не зависим от языка программирования.
Для разработки приложений используются различные шаблоны проектирования. В разрабатываемом приложении используется шаблон «MVC» (Model-View-Controller)

Термин модель-представление-контроллер используется с конца 70-х гг. прошлого столетия. Эта модель явилась результатом проекта Smalltalk в компании Xerox PARC, где она была задумана как способ организации некоторых из ранних приложений графического пользовательского интерфейса[12]. Взаимодействия с приложением MVC осуществляются в соответствии с естественным циклом действий пользователя и обновлений представления, при котором предполагается, что представление не содержит информации о состоянии. Это прекрасно сочетается с запросами и ответами HTTP, которые подкрепляют веб-приложение. Так же в MVC применяется разделение ответственности - модель предметной области и логика контроллера отделены от пользовательского интерфейса, что упрощает и облегчает сопровождение и тестирование[12].

Шаблон MVC подразумевает взаимодействие трех компонентов (рисунок 4):



• Модели, содержащие или представляющие данные, с которыми работают пользователи. Они могут быть простыми моделями представлений, которые только представляют данные, передаваемые между представлениями и контроллерами, или же могут быть моделями предметной области, которые содержат данные, а также операции, преобразования и правила для манипулирования этими данными.

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

• Контроллеры, которые обрабатывают поступающие запросы, выполняют операции с моделью и выбирают представления для визуализации пользователю.

Модели - это определение "вселенной", в которой работают наши приложения. Так же они отвечают за сохранение общего состояния и целостности данных. При этом модели не имеют дела с визуализацией пользовательских интерфейсов и обработкой запросов: это - обязанность представлений и контроллеров. Представления содержат логику, необходимую для отображения элементов модели пользователю, и ничего больше. Они не имеют никакого непосредственного представления о модели, и никак не обмениваются данными непосредственно с ней. Контроллеры являются связующим звеном между представлениями и моделью. Запросы поступают от клиента и обслуживаются контроллером, который выбирает соответствующее представление для отображения пользователю и , если требуется, соответствующую операцию, которая должна быть выполнена по отношению к модели[12].

Каждая часть архитектуры MVC является четко определенной и автономной - этот подход называют разделением ответственности. Логика, которая манипулирует данными в модели, содержится только в модели, логика, отображающая данные - только в представлении, а код, который обрабатывает запросы и ввод пользователей - только в контроллере [12]. При четком разграничении всех частей приложение будет легче сопровождать и расширять в течение всего его срока существования, независимо от того, насколько большим оно станет.

Модель MVC завоевала огромную популярность в качестве архитектуры для веб-приложений по следующим причинам:

• Взаимодействие пользователя с приложением MVC осуществляется в соответствии с естественным циклом: пользователь предпринимает действие, в ответ на которое приложение изменяет свою модель данных и доставляет обновленное представление пользователю. Затем цикл повторяется. Это очень удобно укладывается в схему веб-приложений, предоставляемых в виде последовательности запросов и ответов HTTP.

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

Microsoft Asp.Net MVC

Microsoft ASP.NET MVC является каркасом (framework) для разработки веб-приложений в рамках архитектуры Model-View-Controller. Он берет на себя реализацию множества стандартных функций, связанных с архитектурой и позволяет разработчику сосредоточиться непосредственно на создании кода самого приложения – бизнес-логики и пользовательского интерфейса.

Стандартный проект, подготовленный Visual Studio содержит:

• библиотеки jQuery, modernizr (используется для упрощения поддержки старых версий браузеров без HTML5) и Microsoft Ajax;

• Entity Framework;

Шаблон разметки для Представлений;

• Стандартные для ASP.NET файлы Global.asax и Web.config.

Структура директорий приложения ASP.NET MVC, создаваемая по-умолчанию, имеет 3 главных директории:

• Controllers

• Models

• Views

По соглашению классы контроллера содержаться внутри директории /Controllers, классы моделей данных – внутри директории /Models, и шаблоны вида – внутри директории /Views.

Но, при разработке более серьезных приложений, чем простой сайт, такая структура недостаточна. В таком случае вся серверная логика работы приложений выносится из контроллеров в отдельные сборки, на отдельные слои, а контроллеры представляют из себя просто «слой сервисов» - обеспечивают связь между http-запросами и бизнес-логикой.
1   2   3   4   5   6   7   8   9   ...   16


написать администратору сайта