Разработка CMS системы на основе технологии ASP.NET
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
?ие (View). Отвечает за отображение информации (пользовательский интерфейс).
Поведение (Controller). Интерпретирует данные, введенные пользователем, и информирует модель и представление о необходимости соответствующей реакции.
На схеме показаны отношения между компонентами каркаса.
Преимущества подхода разработки MVC[29]:
Четкое разделение логических слоев. Отделение представления от контроллера предоставляет возможность простой замены движка представления без модификации кода контроллера, независимость от реализации модели позволяет описать только интерфейсы объектов и подменять реализацию при необходимости.
Полный контроль над кодом разметки. Полный контроль над разметкой может быть особенно важен, если в веб-приложении используется код, работающий на стороне клиента в браузере пользователя
Логическое разделение функциональности. В веб-приложениях MVC Framework есть четкое разделение на действия контроллеров, и каждое действие имеет собственных URI.
Красивые URL-адреса. Это достигается засчет использования гибкой системы маршрутизации.
Прозрачный процесс обработки запроса. Процесс обработки запроса легко прослеживается, поскольку обработка запроса разделена на небольшое количество очень простых шагов.
Расширяемость. В MVC Framework возможно использование разных библиотек для обработки представлений, собственных алгоритмов создания объектов контроллеров и расширение механизмов функционирования компонентов библиотеки
Простота автоматического тестирования. Например, при тестировании кода логики приложения (контроллера) , можно подменить модель версией, созданной специально для тестирования и предоставляющей минимальный набор данных.
Полноценная поддержка всех возможностей ASP.NET
Недостатками являются:
Высокий порог входа в технологию
Необходимы глубокие знания HTML, CSS, JavaScript
Отсутствие механизма хранения состояния
Сложности создания библиотек компонентов
5.3XML
XML (eXtensible Markup Language)[30] - формат, используемый для хранения сложных структурированных данных. Он очень похож на HTML, но здесь названия тегов, атрибутов и в целом весь формат хранения данных мы придумываем сами.
Особенности формата:
первой строкой всегда указывается объявление XML (версия и кодировка)
любой XML-документ должен обязательно иметь только один корневой элемент
не допускаются незакрытые теги
В данной работе xml-файлы используются для хранения данных, таких как информации о настройках, разделах, постах и т.п. вместо базы данных. Работа с XML-файлами осуществляется при помощи набора функций LINQ.
5.4ARGO UML - инструмент проектирования UML
ARGO UML[31] является средой UML моделирования.
Функциональность:
Поддержка спецификаций UML 1.3, 1.4, XMI 1.0, 1.1, 1.2
9 видов диаграмм UML (диаграммы классов, состояний, кооперации, последовательности, деятельности, прецедентов, объектов, компонентов, развёртывания)
Поддержка OCL для классов
Генерация исходного кода Java, C++, C# и PHP
Обратный инжиниринг из исходного кода и байткода Java.
6Проектирование архитектуры
6.1Прототипирование графического интерфейса пользователя
Прототипирование помогает в процессе создания качественных пользовательских интерфейсов. Создание прототипов позволяет вносить быстрый обзор многих идей и выявлять недочеты в проектируемом приложении на самом раннем этапе разработки. Прототипы могут быть представлены в разнообразных формах: от бумажных набросков, до дизайна, созданного в профессиональном пакете, который выглядит очень близко к желаемому результату. В данном проекте для создания прототипа был использован инструмент Microsoft Expression Blend - SketchFlow[32].
Карта экранов и компонент (рисунок 6.1) показывает как они связаны между собой.
Рисунок 6.1 - Sketch flow map
Экраны - это ключевые состояния приложения. Компоненты - это части приложения, которые могут вставляться в другие компоненты или экраны, т.е. обычная композиция.
На карте видно, что есть стартовый экран Autorisation (рисунок 6.2) и есть несколько основных экранов, в каждый из которых вставлено меню в виде компоненты MainMenu, через который можно попасть на любой из экранов.
Рисунок 6.2. Прототип окна авторизации
После проверки правильности логина и пароля, экран авторизации либо переходит в приветственный экран Welcome или снова возвращается экран Autorisation.
На остальных экранах содержатся данные, такие как основные настройки, список элементов меню (рисунок 6.4), список стилей (рисунок 6.3), список разделов(рисунок 6.5) и статей, а также функционал для их использования, редактирования, создания новых элементов данных и удаления.
Рисунок 6.3 - Прототип экрана Styles
Рисунок 6.4. Прототип экрана Menu
Рисунок 6.5. Прототип экрана Categories
6.2Общая архитектура программного средства
ASP.NET MVC 3[24] использует шаблон Model-View-Controller, который широко применяется в веб-программировании.
Шаблон MVC отделяет логику модели данных приложения от логики представления и бизнес-логики. Кроме того, в платформе ASP.NET MVC логическое разделение реализуется физически в структуре проекта, в которой контроллеры и представления хранятся в папках, для определения отношений между которыми используются определенные правила именования.
Для того чтобы понять принципы работы