Серверная веб-разработка с помощью .NET для начинающих

Веб-API предназначены для того, чтобы приложения могли взаимодействовать с данными и бизнес-логикой и обмениваться информацией с другими службами через распространенные интернет-протоколы, такие как HTTP. В этом курсе представлены основные понятия, лежащие в основе ASP.NET, включая модель размещения.
Веб-API предназначены для того, чтобы приложения могли взаимодействовать с данными и бизнес-логикой и обмениваться информацией с другими службами через распространенные интернет-протоколы, такие как HTTP. В этом курсе представлены основные понятия, лежащие в основе ASP.NET, включая модель размещения, ПО промежуточного слоя и внедрение зависимостей. Этот курс также предоставляет общие сведения о создании служб на основе HTTP с помощью минимальных API.
Показать больше
Выступающий
- Safia Abdalla
Введение в ASP.NET MVC
ASP.NET MVC представляет собой платформу для создания сайтов и веб-приложений с использованием паттерна (или шаблона) MVC (model — view — controller).
Работа над новой платформой была начата в 2007 году, а в 2009 году появилась первая версия. В итоге к текущему моменту (2012 год) уже было выпущено 4 версии платформы, а сам фреймворк обрел большую популярность по всему миру благодаря своей гибкости и адаптивности.
Шаблон MVC, лежащий в основе новой платформы, подразумевает взаимодействие трех компонентов: контроллера (controller), модели (model) и представления (view). Что же представляют эти компоненты?
Контроллер (controller) представляет класс, с которого собственно и начинается работа приложения. Этот класс обеспечивает связь между моделью и представлением. Получая вводимые пользователем данные, контроллер исходя из внутренней логики при необходимости обращается к модели и генерирует соответствующее представление.
Представление (view) — это собственно визуальная часть или пользовательский интерфейс приложения — например, html-страница, через которую пользователь, зашедший на сайт, взаимодействует с веб-приложением.
Модель (model) представляет набор классов, описывающих логику используемых данных.
Общую схему взаимодействия упрощенно можно представить следующим образом:

ASP.NET MVC и ASP.NET Web Forms
ASP.NET MVC является в некотором роде конкурентом для традиционных веб-форм и имеет по сравнению с ними следующие преимущества:
- Разделение ответственности . В MVC приложение состоит из трех частей: контроллера, представления и модели, каждая из которых выполняет свои специфичные функции. В итоге приложение будет легче поддерживать модифицировать в будущем.
- В силу разделения ответственности приложения mvc обладают лучшей тестируемостью . И мы можем тестировать отдельные компоненты независимо друг от друга.
- Соответствие протоколу HTTP . Приложения MVC в отличие от веб-форм не поддерживают объекты состояния (ViewState). Ясность и простота платформы позволяют добиться большего контроля над работой приложения
- Гибкость . Вы можете настраивать различные компоненты платформы по своему усмотрению. Изменять какие-либо части конвейера работы MVC или адаптировать его к своим нуждам и потребностям.
В то же время не стоит однозначно сбрасывать со счетов ASP.NET WebForms. Поскольку она также имеет свои сильные стороны, например, модель событий, которая будет ближе тем разработчикам, которые ранее занимались созданием клиентских приложений.
В традиционных веб-формах вы имеете контроль над разметкой и можете в реальном времени в визуальном редакторе Visual Studio увидеть, как будет выглядеть та или иная страница. При работе с MVC Visual Studio подобного не позволяет делать.
В любом случае вы вольны выбирать ту платформу, которая приходится вам больше по душе. И если у вас написаны объемные проекты с применением традиционных веб-форм, возможно, стоит продолжать с ними работать. Тем более, что ASP.NET Web Forms еще не умирает и также продолжает развиваться.
Создание сайта с нуля на ASP.NET Core MVC
Архив с исходным кодом проекта можно скачать ниже на странице по ссылке.
Часть 1. В этом видео посмотрим на конечный результат, какое веб-приложение у нас получится в итоге. Можно сказать, придумаем себе техническое задание. Также определимся со стеком технологий, которые будут использоваться в проекте.
Часть 2. В этом видео мы подготовим базовую структуру проекта, на которой в дальнейшем будет строиться наше приложение. Также выберем HTML5-макет для сайта, установим WYSIWYG-редактор CKEditor.
Часть 3. В этом видео мы запрограммируем базовую необходимую инфраструктуру, чтобы подготовить наш сайт к первому запуску.
Часть 4. В этом видео мы определим доменные объекты для нашего приложения, создадим контекст базы данных и в целом наладим связь между SQL-сервером и сайтом.
Часть 5. В этом видео мы настроим правила для аутентификации и авторизации пользователей. Также запрограммируем панель администратора, где можно управлять контентом сайта.
Часть 6. В этом видео мы запрограммируем вывод контента из базы данных в браузер пользователя, создадим соответствующие разделы на сайте, исправим HTML-макет под эти требования.
Часть 7. В этом видео мы заканчиваем работу над нашим сайтом. Настроим публикацию, проанализируем написанный код и в целом подведем итоги по проекту.
Курс ASP.NET

Изучение ASP.NET Core MVC / #1 — Создание сайта на C#
В курсе вы познакомитесь с платформой ASP.NET Core. Вы научитесь писать полноценные веб сайты на языке C#, а также научитесь работать с шаблоном MVC, изучите работу с базами данных и научитесь строить сайты со множеством страниц и функций.
Видеоурок
Полезные ссылки:
- Полный курс по C# ;
- Скачать Visual Studio .
Подавляющее большинство хоть что-то, но слышали о платформе ASP.NET (или же ASP NET CORE). Многие ошибочно называют платформу как ASP CORE NET, но это неверное название. Платформа называется ASP .NET, а приставка Core обозначает дословно – платформа.
Знания относительно MVC ASP NET очень разбросанные и неструктурированные, от чего нет чёткого представления о возможностях данной платформы. В рамках данного материала рассмотрим ключевые особенности ASP.NET.
ASP.NET – это платформа для разработки в вебе (сайты, приложения). Она поддерживает работу с несколькими языками программирования, входящими в сборку фреймворка: Basic NET, C# , J# и ряд прочих. С данной платформой есть возможность создавать как простейшие веб-ресурсы, так и очень сложные сайты, способные к обработке многотысячного потока пользователей.
ASP.NET по скорости работы значительно превосходит прочие скриптовые языки. Причина быстрой обработки заключается в том, что основа компилируется при первом подключении пользователя и сразу добавляется в кэш компьютера. Все последующие переходы по сайту используют уже кэшированный код, который просто извлекается из памяти, а не скачивается с сервера повторно. Такой подход сильно экономит время на парсинге, загрузке и обработке файлов.
Популярнейшие технологии и языки программирования для разработки веб-ресурсов:

В нынешних реалиях ASP .NET невероятно популярна, она лежит в основе огромных интернет-порталов. Нам удалось найти хороший материал , в котором освещено 10 лучших веб-ресурсов, созданных на данной платформе.
В этом списке присутствуют:
- StackOverflow – это один из самых больших форумов. С его помощью тысячи людей ежедневно получают ответы на насущные вопросы;
- Основной портал корпорации Microsoft ;
- Крупнейший сайт для регистрации доменов GoDaddy . Сегодня занимает лидирующие места в сфере веб-хостинга.
- Официальный веб-сайт Dell .
Этим список не ограничивается, есть масса других сайтов.
В ASP .NET применяется традиционная схема MVC – Модель-Вид-Контроллер (ASP NET Core MVC ). Эта же схема часто встречается в C# (C# MVC). Все элементы отвечают за конкретные действия. Для примера, пользователь запускает процесс регистрации и отправляет на сервер регистрационные данные. Контроллер интерпретирует действия человека и передаёт модели информацию о внесённых изменениях в статус пользователя. Модель реагирует на действия контроллера и работает с поставляемыми данными. Вид отвечает за отображение информации с модели.
Пример стандартной MVC C# представлен ниже. Точно такая же используется в ASP NET C#:

После отправки запроса на сервер, его начинает обрабатывать контроллер, затем передаёт изменения в модель, которая реагирует на обновление и выдаёт всё нужное для отображения сайта. Вид выполняет только роль отображения внешнего вида страницы – обычный HTML-шаблон.
Если подытожить, это очень удачная и перспективная технология. Отдав ей предпочтение, вы наверняка не пожалеете в будущем.
ASP .NET или ASP .NET Core?
.NET Core – кроссплатформенная среда выполнения для приложений из веба или консольных программ. Программные продукты, разработанные на ней, могут успешно исполняться на Linux, Windows, MacOS.
Основные плюсы: мультиплатформенность, открытый исходный код.
.NET Framework – среда исполнения, которая предназначена исключительно для Виндовс. Помогает в разработке десктопных программ под Windows и веб-приложений ASP .NET под IIS.
Ключевые достоинства: огромный ассортимент готовых библиотек, значительно больше возможностей в сравнении с прошлой платформой.
Сегодня Microsoft усиленно продвигает и модернизирует Core, постоянно добавляя полезный функционал. Может быть скоро эта среда сравняется с .NET Framework.
Пара сценариев для разработчиков веб-ресурсов на профессиональном уровне.
ASP .NET Core – лучше применять, если вы:
- Желаете установить таргетинг в приложении на все популярные ОС;
- Не страшитесь изучения нового;
- Не боитесь уделять достаточно времени исправлениям и доработкам, ведь Core не дошёл до статической точки, периодически меняется.
ASP .NET – идеальное решение, если вы:
- Не испытываете необходимости организовывать кросплатформенную поддержку веб-приложения;
- Нуждаетесь в стабильной среде разработки;
- Не имеете большого количества времени для разработки, то есть дедлайны поджимают;
- Уже занимаетесь разработкой или модернизацией существующей программы;
- Входите в состав команды, обладающей опытом работы с ASP.NET.
Тем, кто сегодня только планирует начать обучение и в ближайший год начать работать на крупные компании, ASP .NET Core идеально подходит. С этой средой вы получаете много перспектив на будущее.
План курса
В ходе курса для начинающих мы освоим платформу ASP Core и на её основе создадим сайта. Для его реализации мы будем использовать реальные примеры создания сайта, что отлично подойдут для понимания начинающим программистам.
К концу курса мы разработаем полноценный сайт. На базе полученных знаний вы сможете разрабатывать сайты на ASP NET.
Дополнительные курсы
Фреймворк .NET поддерживает множество языков, но самым популярным является C#. Прежде чем приступать к видео курсу вам следует изучить C#. На нашем ресурсе представлено множество курсов на эту тематику. Просмотреть их все можете по этой ссылке .
Большое задание по курсу
Вам необходимо оформить подписку на сайте, чтобы иметь доступ ко всем большим заданиям. В задание входит методика решения, а также готовый проект с ответом к заданию.
PS: подобные задания доступны при подписке от 1 месяца