Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теоретический_курс.doc
Скачиваний:
36
Добавлен:
10.11.2019
Размер:
7.68 Mб
Скачать

Глава 5. Интегрированная среда разработки microsoft visual studio 2010

5.1. Типы приложений для проектов группы Visual c# Типы приложения для проектов группы Visual c#

1. Типы приложений в окне «Создать проект» группы Visual c#

Для получения окна Создать проект необходимо запустить среду разработки Visual Studio 2010, откроется Начальная страница:

Рис. 1. 1. Начальная страница Visual Studio 2010 Professional (русская версия)

Надо создать пустой проект, для этого выполним последовательно: Файл -> Создать -> Проект… (также можно просто нажать сочетание клавиш Ctrl+Shift+N или пункт «Создать проект…» на Начальной странице). В открывшемся окне в левом списке ищем Последние шаблоны, далее жмём на Установленные шаблоны и далее на Visual C#:

Рис. 1. 1. Окно создания нового проекта

1. Консольное приложение

Консольное приложение ― наиболее распространённый и простой тип приложений. Язык С# можно использовать для создания обычных консольных приложений — текстовых приложений, запускаемых в окне (стилистика и команды) DOS. Скорее всего, такие приложения будут применяться для тестирования библиотек классов. Однако гораздо чаще язык С# придётся использовать для создания приложений, имеющих доступ к множеству технологий, связанных с .NET.

2. Веб-приложение ASP.NET

Изначально появление ASP.NET 1.0 фундаментально изменило модель веб-программирования. ASP.NET 4 является старшим (по умолчанию доступен в среде разработки)выпуском продукта и построен на базе прежних достижений. В ASP.NET 4 реализованы основные революционные шаги, направленные на повышение продуктивности работы. Главная цель ASP.NET 4 — позволить строить мощные, безопасные, динамичные приложения с использованием минимально возможного объема кода.

Опишем возможности ASP.NET.

Первое, и, возможно, самое важное — это то, что страницы структурированы. То есть каждая страница — это, по сути, класс, унаследованный от класса .NET System.Web.UI.Page, который может переопределить набор методов, вызываемых во время жизненного цикла объекта Page. Можно воспринимать эти события как специфичные для страниц родственники событий OnApplication_Start и OnSession_Start, которые поступали в файлы global.asp в классической платформе ASP). Поскольку функциональность страниц можно выделить в обработчики событий определенного назначения, страницы ASP.NET гораздо легче понять.

Другая приятная особенность страниц ASP.NET заключается в том, что их можно создавать в Visual Studio 2010 — той же среде, в которой программируется бизнес-логика и компоненты доступа к данным, используемые этими же страницами ASP.NET. Проект Visual Studio 2010, или решение (solution), содержит все файлы, ассоциированные с приложением. Более того, классические ASP-страницы можно отлаживать непосредственно в редакторе. В прежние времена, связанные с Visual InterDev, существовала неприятная необходимость специально конфигурировать InterDev и веб-сервер проекта для включения отладки.

Для большей ясности средство ASP.NET отделённого кода (code-behind) позволяет распространить структурированный подход ещё дальше. ASP.NET позволяет изолировать серверную функциональность страницы в классе, скомпилировать этот класс вместе с другими страницами в библиотеку DLL и разместить эту DLL в каталоге, находящемся ниже части HTML. Директива @Page, указанная в начале страницы, ассоциирует этот файл с классом. Когда браузер запрашивает страницу, веб-сервер генерирует события в классе, находящемся в файле класса страницы.

Последнее, но не менее важное свойство ASP.NET, которое следует упомянуть — это увеличенная производительность. В то время как классические ASP-страницы интерпретировались при каждом обращении к странице, страницы ASP.NET после компиляции подвергаются кэшированию на веб-сервере. Это значит, что все последующие запросы страниц ASP.NET выполняются быстрее, чем первый.

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

Чтобы ещё более облегчить конструирование веб-страниц, в Visual Studio 2010 предлагается библиотека Web Forms (Веб-формы). Это средство позволяет графически создавать страницы ASP.NET — точно так же, как создаются окна в Visual Basic 6 и в C++ Builder. Другими словами, потребуется перетащить необходимые элементы управления из панели инструментов на поверхность формы, затем слегка подкорректировать код формы и написать обработчики событий для элементов управления. При использовании языка С# для создания веб-формы, разработчик создаёт класс С#, унаследованный от базового класса Page, и страницу ASP.NET, которая отображает этот класс в качестве своего отделенного кода. Разумеется, разработчик не обязан применять для создания веб-формы именно С#; для этого можно воспользоваться также Visual Basic 2010 или любым другим языком, ориентированным на .NET.

В прошлом сложность веб-разработки удерживала некоторые команды разработчиков от попыток её освоения. Для достижения успехов в разработке веб-приложений приходилось знать множество разных технологий, таких как VBScript, ASP, DHTML, JavaScript и т.д. Применение концепций Web Forms к веб-страницам существенно упростило построение веб-приложений.

Элементы управления, применяемые в веб-формах, не являются элементами управления в том же смысле, в каком ими являются элементы ActiveX. Вместо этого они представляют собой XML-дескрипторы, принадлежащие пространству имён ASP.NET, которые веб-браузер динамически трансформирует в HTML-дескрипторы и сценарии клиентской стороны, когда осуществляется запрос этой страницы. Удивительно то, что веб-сервер может отображать одни и те же элементы управления серверной стороны различными способами, генерируя трансформацию, соответствующую конкретному веб-браузеру, который прислал запрос. Это означает, что теперь можно легко создавать совершенные пользовательские интерфейсы веб-страниц, не заботясь о том, как достичь того, чтобы страница работала в любом из доступных браузеров — об этом позаботится Web Forms.

Когда-то HTML-страницы составляют большую часть трафика сети Интернет. Однако благодаря XML, компьютеры получают независимый от устройства формат, который может использоваться для их взаимодействия в Интернете. В будущем для обмена информацией компьютеры смогут использовать XML вместо того, чтобы пересылать друг другу по выделенным линиям сообщения в специальном патентованном формате, подобном EDI (Electronic Data Interchangeэлектронный обмен данными). Веб-службы XML предназначены для веб-среды, ориентированной на службы, когда удаленные компьютеры предоставляют друг другу динамическую информацию, которая может быть проанализирована и переформатирована, прежде чем получить свое окончательное представление для пользователя. Веб-службы XML — это простой способ для компьютеров предоставлять информацию в форме XML другим компьютерам в Интернете.

В рамках технической терминологии веб-служба XML в .NET — это страница ASP.NET, которая возвращает по запросам клиентов XML-код вместо HTML-кода. Такие страницы опираются на DLL-библиотеки отделенного кода, которые содержат классы, унаследованные от WebService. Интегрированная среда разработки Visual Studio 2010 предлагает механизм, облегчающий создание веб-служб.

Предприятие или организация может отдать предпочтение веб-службам XML по двум основным причинам. Первая причина заключается в том, что они основаны на HTTP; веб-службы могут использовать существующие сети на базе HTTP в качестве посредников для передачи информации. Другая причина связана с тем, что поскольку веб-службы XML применяют XML, формат передаваемых данных является самодокументированным, открытым и независящим от платформы.