« Предыдущая Следующая »

3.2. ASP.NET MVC Framework

Платформа ASP.NET MVC представляет собой фреймворк для создания сайтов и веб-приложений с помощью реализации паттерна MVC. Сам архитектурный шаблон MVC далеко не нов (его появление датируется 1978 г. и связано с проектом Smalltalk в Xerox PARC), но в наши дни он завоевал огромную популярность в качестве шаблона для веб-приложений.

Концепция паттерна MVC (model - view - controller) предполагает разделение приложения на три компонента:

Контроллер (controller) интерпретирует действия пользователя, оповещая модель о необходимости изменений. В ASP.NETMVC представляет класс, обеспечивающий связь между пользователем и системой, представлением и хранилищем данных. Он получает вводимые пользователем данные и обрабатывает их. И в зависимости от результатов обработки отправляет пользователю определенный вывод, например, в виде представления.

Представление (view) - это собственно визуальная часть или пользовательский интерфейс приложения. Как правило, html-страница, которую пользователь видит, зайдя на сайт.

Модель (model) предоставляет данные и реагирует на команды контроллера, изменяя своё состояние. В ASP.NETMVC представляет класс, описывающий логику используемых данных.

Общую схему взаимодействия этих компонентов можно представить следующим образом:

Взаимодействие MVC компонентов

Рис. 1 Схема взаимодействия MVC компонентов

Инфраструктура MVC Framework построена в виде набора независимых компонентов, которые удовлетворяют интерфейсу .NET или созданы на основе абстрактного базового класса. Компоненты, подобные системе маршрутизации, механизму визуализации и фабрике контроллеров, можно легко заменять другими компонентами с собственной реализацией. В общем случае для каждого компонента MVC Framework предлагает три возможности:

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

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

ASP.NET MVC генерирует ясный и соответствующий стандартам код разметки. Ее встроенные вспомогательные методы HTML производят соответствующий стандартам вывод.

ASP.NET MVC позволяет легко использовать наилучшие библиотеки для построения пользовательских интерфейсов, подобные jQuery или Bootstrap CSS. К примеру, библиотека jQuery настолько эффективно поддерживается, что поставляется в качестве встроенной части стандартного шаблона проекта ASP.NET MVC в Visual Studio наряду с другими популярными библиотеками, такими как Bootstrap, Knockout и Modernizr.

3.3. ADO.NET Entity Framework

Любой веб-сайт, если он не является статичным набором HTML страниц, должен иметь базу данных. Наиболее часто используются реляционные базы данных. У Microsoft имеется собственная база данных – MSSQLServer.

MS SQL Server является очень мощным решением.  Данная база данных использует язык запросов T-SQL, который является расширением языка SQL. Однако использование SQL в веб приложениях не очень удобно. Необходимо писать специальные классы для записи и считывания данных. Преобразовывать данные, представленные в виде объектов, в табличные и наоборот. А также защищаться от возможных SQLинъекций. Для решения данных трудностей существует EntityFramework.

ADO.NET Entity Framework — это программная модель, которая пытается заполнить пробел между конструкциями базы данных и объектно-ориентированными конструкциями. Используя Entity Framework, можно взаимодействовать с реляционными базами данных, не имея дело с кодом SQL. Исполняющая среда EF генерирует подходящие операторы SQL, когда вы применяете запросы LINQ к строго типизированным классам.

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

Центральной концепцией Entity Framework является понятие сущности. Сущность представляет набор данных, ассоциированных с определенным объектом. Поэтому данная технология предполагает работу не с таблицами, а с объектами и их наборами.

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

Entity Framework предполагает три возможных способа взаимодействия с базой данных:

  • Database first: Entity Framework создает набор классов, которые отражают модель конкретной базы данных
  • Model first: сначала разработчик создает модель базы данных, по которой затем Entity Framework создает реальную базу данных на сервере.
  • Code first: разработчик создает класс модели данных, которые будут храниться в бд, а затем Entity Framework по этой модели генерирует базу данных и ее таблицы

3.4. Bootstrap

Практически любая веб-страница содержит множество похожих компонентов, которые встречаются и на других сайтах. Это меню, навигация, элементы форм, заголовки и др. Не говоря уже про многоколоночную вёрстку, без которой вообще сложно превратить картинку макета в готовую веб-страницу. Чтобы меньше писать кода и по максимуму задействовать уже готовые решения применяются специализированные библиотеки, их часто называют фреймворками. Одним из таких фреймворков для вёрстки является Bootstrap.

Фактически Bootstrap представляет собой конструктор, фрагменты которого вы включаете в свой проект при необходимости. Это уменьшает время разработки, потому что не требуется придумывать и писать их самостоятельно.

Bootstrap направлен на создание макета под разные устройства — ноутбуки, планшеты, смартфоны. При этом код пишется один, а масштабирование в зависимости от ширины устройства берёт на себя фреймворк.

Чтобы использовать библиотеку в своей работе, требуется обладать минимальными знаниями по HTML, CSS и JavaScript. Это безусловно удобно для начинающих разработчиков.

3.5. jQuery

Современное веб-программирование и создание веб-сайтов уже невозможно представить без использования языка JavaScript. Однако в настоящее время, все чаще используется не "голый" код javascript, а javascript-фреймворки и библиотеки. Одной из таких библиотек, причем, наверное, самой популярной на сегодняшний день, является jQuery.

Использование jQueryдаёт нам следующие преимущества:

  • Упрощение работы с кодом. jQuery предлагает простой элегантный синтаксис для манипулирования элементами на веб-странице.
  • Расширяемость. Весь код jQuery открыт для просмотра и изменения, и в случае, если что-то в библиотеке не устраивает, ее можно модифицировать. А также можно создавать плагины jQuery.
  • Кроссбраузерность. jQuery имеет поддержку большинства известных браузеров, в том числе, таких как IE 7,8.
« Предыдущая Следующая »
Похожие публикации
Похожих публикаций не обнаружено.