Посібник ASP.NET MVC для початківців: що таке, Archiтектура
⚡ Розумний підсумок
ASP.NET MVC — це програма з відкритим вихідним кодом Microsoft фреймворк, який розділяє веб-застосунок на шари Моделі, Представлення та Контролера, надаючи розробникам повний контроль над HTML, тестований код, чітку маршрутизацію та легку альтернативу класичним веб-формам.
Що таке ASP.NET MVC?
ASP.NET MVC це платформа веб-розробки з відкритим кодом від Microsoft що забезпечує архітектуру контролера представлення моделі. ASP.NET MVC пропонує альтернативу веб-формам ASP.NET для створення веб-додатків. Він є частиною платформи .NET для створення, розгортання та запуску веб-додатків. Ви можете розробляти веб-додатки та веб-сайти за допомогою HTML, CSS, jQuery, JavaСценарій тощо
Вивчіть MVC за допомогою цього посібника з ASP.NET MVC, який охоплює всі основні концепції MVC для початківців:
Чому саме ASP.NET MVC?
Хоча веб-форми були дуже успішними, Microsoft думка про розвитокping ASP.NET MVC. Основна проблема з веб-формами ASP.NET — це продуктивність.
В веб-застосункомє чотири основні аспекти, які визначають продуктивність:-
- Проблеми з часом відповіді
- Проблема модульного тестування
- Налаштування HTML
- Повторне використання класу коду
ASP.NET MVC перевершує вищезазначені параметри.
Історія версій MVC
ASP.NET MVC1
- Випущено 13 березня 2009 р
- Працює на .NET 3.5
- Visual Studio 2008
- Архітектура шаблону MVC із механізмом WebForm
- Основні функції включають Html і Unit Testing, Ajax Helpers, Routing тощо.
ASP.NET MVC2
- Ця версія випущена 10 березня 2010 року
- Працює на .NET 3.5, 4.0 та з Microsoft Visual Studio 2008
- Включіть такі функції, як помічники шаблонів, помічники інтерфейсу користувача з автоматичним каркасом та налаштовувані шаблони
- Він підтримує атрибути DataAnnotations для застосування перевірки моделі на стороні клієнта та сервера
ASP.NET MVC3
- Він був випущений 13 січня 2011 року
- Працює на .NET 4.0 і з Microsoft Visual Studio 2010
- Використання НuGet для доставки програмного забезпечення та дозволяє вам керувати залежностями на платформі
- Краще JavaПідтримка скриптів з jQuery-валідацією та прив'язкою JSON
- Він пропонує такі функції, як механізм перегляду Razor та покращені атрибути анотацій даних для перевірки моделі як на стороні клієнта, так і на стороні сервера.
ASP.NET MVC4
- Ця версія була випущена в серпні 2012 року
- Він працює на .NET 4.0, 4.5 і з Visual Studio 2010 і Visual Studio 2012
- Покращення стандартних шаблонів проектів
- Пропонує такі функції, як шаблон мобільного проекту з використанням jQuery Mobile, підтримку завдань для асинхронних контролерів, групування, мініфікацію тощо.
ASP.NET MVC5
- Дата виходу 17 жовтня 2013 року
- Працює на .NET 4.5, 4.5.1 та з Visual Studio 2012 та Visual Studio 2013
- Підтримує маршрутизацію атрибутів у MVC
Особливості MVC
- Легка перевірка без тертя
- Повний контроль над вашим HTML, JavaСценарій, і URLs
- Наявне кредитне плече ASP.NET Функції
- Новий варіант презентації для ASP.NET
- Простіший спосіб програмування ASP.NET
- Чіткий розподіл логіки: модель, перегляд, контролер
- Тестова розробка
- Підтримка паралельної розробки
Речі, про які слід пам’ятати під час створення програми MVC
Ось кілька корисних речей у цьому підручнику з ASP.NET MVC, які вам потрібно запам’ятати для створення програми MVC:
- Вам потрібно пам'ятати, що ASP.NET MVC НЕ є заміною застосунків на основі веб-форм ASP.NET.
- Підхід до розробки MVC-додатків має бути визначений на основі вимог до додатків та функцій, що надаються ASP.NET MVC, щоб відповідати конкретним потребам розробки.
- Процес розробки застосунків за допомогою ASP.NET MVC є складнішим порівняно з застосунками на основі веб-форм.
- Ремонтопридатність програми завжди буде вищою з розділенням завдань програми.
Архітектурний шаблон MVC
MVC — це шаблон архітектури програмного забезпечення, який дотримується методу розділення завдань. У цій моделі .NET-додатки поділяються на три взаємопов'язані частини, які називаються Модель, Представлення та Контролер.
Мета шаблону MVC полягає в тому, що кожну з цих частин можна розробляти, тестувати у відносній ізоляції, а також комбінувати для створення дуже надійної програми.
Давайте розглянемо їх усі детально:
моделі
Об’єкти моделі – це частини програми, які реалізують логіку програми домен даних. Він отримує та зберігає стан моделі в базі даних. Наприклад, об’єкт product може отримувати інформацію з a база даних, прооперуйте його. Потім запишіть інформацію назад до таблиці продуктів на сервері SQL.
думки
Представлення (Views) – це компоненти, що використовуються для відображення інтерфейсу користувача (UI) застосунку, який також називають viewmodel у MVC. Він відображає .NET MVC-застосунок, створений з даних моделі.
Типовим прикладом може бути режим редагування таблиці Item. Він відображає текстові поля, спливаючі вікна та прапорці на основі поточного стану продуктів і об’єктів.
контролер
Контролери обробляють взаємодію з користувачем, працюють з моделлю та вибирають вигляд для відображення цього інтерфейсу користувача. У .NET MVC-додатку вигляд відображає лише інформацію, контролер керує та реагує на ввідні дані та взаємодію користувача за допомогою фільтрів дій у MVC.
Наприклад, контролер керує значеннями рядка запиту та передає ці значення в модель.
Веб-форми проти MVC
| Параметри | Веб-форми | MVC |
|---|---|---|
| Модель | Веб-форми ASP.NET дотримуються моделі подієво-орієнтованої розробки. | ASP.NET MVC використовує модель розробки на основі шаблонів MVC. |
| Використовується з | Існує з 2002 року | Вперше він був випущений в 2009 році |
| Підтримка стану перегляду | Веб-форма ASP.NET підтримує перегляд стану для керування станом на стороні клієнта. | .NET MVC не підтримує стан перегляду. |
| URL тип | Веб-форма ASP.NET має файлові URLs. Це означає, що ім'я файлу існує в URLі вони повинні існувати фізично. | ASP.NET MVC має маршрутизацію URLце означає URLякі перенаправляються до контролерів та дій. |
| синтаксис | Веб-форми ASP.NET дотримуються синтаксису веб-форм. | ASP.NET MVC дотримується настроюваного синтаксису. |
| Вид перегляду | Веб-форма, представлення тісно пов'язані з Code позаду (ASPX-CS), тобто логіка. | MVC, Views і логіка завжди зберігаються окремо. |
| Однорідний вигляд та відчуття | Він має головні сторінки для узгодженого вигляду. | ASP.NET MVC має макети для узгодженого вигляду. |
| Code Багаторазовість | Веб-форма пропонує елементи керування для повторного використання коду. | ASP.NET MVC пропонує часткові представлення для можливості повторного використання коду. |
| Контроль для HTML | Less контроль над відтвореним HTML. | Повний контроль над HTML |
| Державне управління | Автоматичне керування станом елементів керування. | Ручне управління державою. |
| Підтримка TDD | Потрібен слабкий або спеціальний TDD. | Заохочує та включає ТДД. |
Переваги ASP.NET MVC
- За замовчуванням програми, які легко підтримувати
- Він дозволяє замінити будь-який компонент програми.
- Краща підтримка тестової розробки
- Складними програмами легко керувати завдяки поділу на моделі, представлення та контролери.
- Надійний механізм маршрутизації з шаблоном переднього контролера
- Пропонує кращий контроль над поведінкою програми з усуненням стану перегляду та серверних форм
- Застосунки .NET MVC підтримуються великими командами розробників та веб-дизайнерів.
- Він пропонує більше контролю над поведінкою програми. Він також використовує оптимізовану пропускну здатність для запитів, зроблених до сервера
Недоліки ASP.NET MVC
- Ви не можете переглянути попередній перегляд сторінки дизайну, як це відбувається зі сторінкою .aspx.
- Вам потрібно щоразу запускати програму, щоб побачити її фактичний вигляд.
- Розуміння потоку програми може бути складним завданням
- Його досить складно реалізувати, тому він не є ідеальним варіантом для додатків невеликого рівня
- Важко вивчити MVC для ASP.NET, оскільки для цього потрібно добре розуміти шаблон MVC
Найкращі практики використання ASP.NET MVC
- Створіть окрему збірку для MODEL у випадку великого та складного коду, щоб уникнути небажаних ситуацій.
- Модель повинна включати бізнес-логіку, підтримку сеансу, частину перевірки та частину логіки даних.
- VIEW не має містити жодної бізнес-логіки та обслуговування сеансу, використовуйте ViewData для доступу до даних у View
- Бізнес-логіка та доступ до даних ніколи не повинні відбуватися в контролері.
- Контролер має відповідати лише за підготовку та повернення перегляду, виклик моделі, перенаправлення до дії тощо.
- Видалити демо-код із програми під час її створення (Видалити AccountController)
- Використовуйте лише певний механізм перегляду, щоб створити розмітку HTML із вашого перегляду, оскільки це поєднання HTML і коду програмування.


