Среда разработки Visual Studio 2010 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Среда разработки Visual Studio 2010



У Microsoft есть очень хорошая традиция – выпускать очередную версию Visual Studio одновременно с каждым крупным обновлением платформы. Так и Visual Studio 2010 вышла к релизу Windows 7/Server 2008 R2.

Visual Studio для компании Microsoft является продуктом «стратегического назначения». Выпустив более десяти лет назад первую версию по-настоящему интегрированной среды разработки, включающей все необходимое для создания приложений с помощью различных языков программирования (тогда, в 1997 г. поддерживались VB, VC++, VJ++ и FoxPro), корпорация определила Visual Studio не только как универсальный инструмент построения решений для платформы Windows, но и как мощное маркетинговое средство. Действительно, огромная клиентская база быстро делает массовыми буквально все технологии, попадающие в Visual Studio. К примеру, успех ASP.NET в значительной мере обусловлен появлением в Visual Studio, благодаря чему «обычные» программисты смогли легко приобщиться к веб-разработке. Учитывая особую роль, к Visual Studio применяются и соответствующие методы продвижения: достаточно демократичные цены, наличие вполне функциональных бесплатных редакций Express и множество программ, позволяющих отдельным категориям пользователей получить профессиональную среду разработки бесплатно или со значительной скидкой. Потому и выход каждой новой версии Visual Studio – знаковое событие для всей ИТ-индустрии.

Visual Studio 2010 в первую очередь позиционируется как «нативная» среда разработки для Windows 7 и Windows Server 2008 R2. Одновременно планируется и выход.NET Framework 4.0 – своеобразной метаплатформы, развертывание которой будет возможно на всех актуальных клиентских и серверных версиях Windows. Также Visual Studio 2010 стала средой разработки и для Silverlight 4, релиз которой уже состоялся. Для ее поддержки необходимо загрузить и установить соответствующий SDK и расширение для IDE. Еще среди поддерживаемых платформ нельзя не упомянуть Microsoft Office 2010, Windows Mobile 6.5, а также «облачную» Windows Azure Services Platform. А полный список очень длинен, поскольку традиционные.NET Framework 2.0–3.5, SQL Server 2000–2008, Microsoft Office 2007, SharePoint 2007, Win32/MFC (на C++) и прочие дополнительно расширяются многочисленными SDK и специальными шаблонами. Таким образом, каждая следующая версия Visual Studio становится все более функциональной и универсальной, а ведь известно, что стремительное экстенсивное развитие программных продуктов нередко превращает их в настоящих «монстров». Впрочем, создатели Visual Studio приняли ряд упреждающих мер, в частности, перекроили как механизм расширений, так и пользовательский интерфейс, практически не менявшийся с 2002 г.

 

 

Интерфейс и возможности IDE

Хотя и визуально, и функционально новый интерфейс максимально напоминает прежний Visual Studio 2008, он сильно отличается технологически – теперь для прорисовки рабочей области вместо Windows Forms используется WPF. Это не только добавило внешнего лоска, но и позволило реализовать множество усовершенствований, направленных на повышение производительности работы, в том числе и с учетом разросшихся возможностей продукта. К примеру, в окне выбора типа проекта, а также в инспекторе свойств появились поля, отфильтровывающие неподходящие элементы по мере ввода нужного названия; редактор теперь позволяет масштабировать текст колесом прокрутки мыши при нажатой клавише Ctrl так же, как это делается в браузере; улучшилась поддержка нескольких мониторов; при разработке с применением модульных тестов будет полезна новая функция, отображающая в реальном времени тесты, на результат которых могут повлиять текущие изменения исходного кода. Был значительно переработан и визуальный редактор WPF/Silverlight – теперь его возможности вплотную приблизились к Expression Blend, что даже дает основания исключить последний из набора инструментов, если для визуальной разработки на базе XAML применяется Visual Studio 2010.

Тем не менее интерфейс покажется совершенно привычным опытным пользователям – сохранены не только места расположения основных элементов, но и их значки. Так что в эстетическом и функциональном плане новации можно лишь приветствовать. А вот с быстродействием не исключены проблемы. Традиционно IDE Visual Studio вполне лояльно относилась к скромным системным ресурсам – по крайней мере, для комфортного ее использования не был нужен суперсовременный компьютер. Нынешний релиз, вероятно, станет переломным в этом отношении: новая IDE потребляет заметно больше процессорных ресурсов и ОЗУ, поэтому весьма желателен достаточно производительный ПК, оснащенный к тому же современной видеокартой. Для профессионального разработчика это, скорее всего, не будет иметь сколь-нибудь серьезного значения, а вот типичный студент, изучающий программирование на своем ПК, может столкнуться с раздражающей медлительностью среды разработки.

Среди наиболее интересных новинок IDE следует отметить Architecture Explorer, позволяющий анализировать сложный программный код в графической форме. Отображаются классы и их члены, взаимосвязи между ними, существуют режимы графического представления информации с различной степенью детализации, от каждого элемента можно непосредственно перейти к исходному коду. Особую ценность Architecture Explorer представляет при изучении сторонних программ и коллективной работе над объемными проектами. Улучшилась также поддержка языка UML, теперь Visual Studio изначально позволяет создавать пять типов диаграмм: классов, прецедентов, последовательностей, деятельности и компонентов.

Отдельного внимания заслуживает усовершенствованный отладчик, который и ранее был предметом гордости Visual Studio. Теперь он дополнен функцией, получившей название «историческая отладка» (Historical Debugging), способной вызвать настоящую зависть у пользователей других IDE. Традиционно для точного выявления источника ошибки применяются точки останова и пошаговое исполнение кода до тех пор, пока не возникнет исключение. Программисты со стажем не понаслышке знакомы с этим утомительным занятием – нередко пошаговая прокрутка и проверка текущего значения переменных занимает гораздо больше времени, чем собственно написание кода. Функция исторической отладки позволит радикально упростить данный процесс – при ее активации все действия программы, вплоть до вызова методов и обработки событий, отслеживаются и сохраняются. Таким образом, во многих случаях для поиска ошибки вообще нет необходимости использовать точки останова, достаточно прервать работу программы с помощью отладчика и в специальном окне просмотреть историю исполнения (за исключением значений локальных переменных, сохранение которых не предусмотрено из соображений производительности). Затем состояние программы можно пошагово пролистывать вперед-назад («прошлое» помечается специальным значком – стрелкой с часами) или сразу переходить к любой нужной точке. Поскольку активация этой функции для сохранения всей истории работы программы может вызвать значительную дополнительную нагрузку на систему, предусмотрены возможность ограничения максимального объема протоколов и гибкая настройка отслеживаемых методов и событий.

 

 

3.2 Новый язык F#

Microsoft не часто балует пользователей Visual Studio новыми языками программирования, входящими в стандартный комплект поставки: тройка C#/VB/C++ оставалась неизменной с 2002 г. И хотя расширить среду разработки можно множеством различных языков, установив их в качестве дополнений, даже от самой Microsoft (к примеру, IronPython или IronRuby), все же это больше удел энтузиастов, а основная масса разработчиков довольствуется тем что есть. Поэтому появление F# в составе Visual Studio 2010 весьма знаменательно, и важен здесь не столько сам факт, сколько то, что этот язык представляет совершенно иную парадигму – функциональное программирование, вплоть до настоящего времени не особо популярное в рядах среднестатистических программистов.

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

В течение продолжительного времени F# существовал в качестве исследовательского проекта, основная задача которого – обогатить императивный язык C# возможностями, традиционно доступными лишь функциональным языкам. Множеством нововведений C# 3.0 из Visual Studio 2008 обязан именно ему. Сам по себе F# не создан с чистого листа в Microsoft, в его основу положен достаточно OCaml, который, в свою очередь, уходит корнями к одному из первых типизированных функциональных языков ML. Несмотря на то что синтаксически F# и OCaml довольно близки, они не эквивалентны: грубо говоря, первый представляет собой подмножество второго, дополненное доступом к средствам.NET Framework. Однако некоторые программы на OCaml могут быть практически без модификаций скомпилированы F#, обратное также справедливо, разумеется, при отсутствии обращений к классам.NET Framework.

В целом, появление F# в составе Visual Studio свидетельствует о том, что разработчики из Microsoft возлагают большие надежды на функциональное программирование, что особенно актуально в эпоху многоядерных процессоров и непомерно возросшей сложности внутренней структуры исходного кода крупных проектов. Конечно, F# не позиционируется в качестве замены традиционным универсальным императивным языкам, в частности C#, и их развитие в направлении ассимиляции наиболее удачных идей декларативного программирования не прекратится. Скорее всего, F#, как и многие другие функциональные языки, займет свое место среди прочих, специализируясь на решении определенного класса задач так же, как, к примеру, SQL занял нишу инструментов для манипулирования реляционными данными. Можно предположить, что в ближайшем будущем владение хотя бы одним функциональным языком появится в числе профессиональных требований к типичному программисту, подобно тому как сегодня необходимо знание того же SQL.

 

 

NET Framework 4.0

В четвертой версии.NET Framework появилось множество нововведений, отражающих наиболее современные течения в программировании и развитии аппаратной базы. В первую очередь это касается поддержки набирающих популярность динамических языков, реализованной посредством расширения среды исполнения CLR (Common Language Runtime) специальным набором сервисов, получивших название DLR (Dynamic Language Runtime). В то время как DLR прежде всего интересно разработчикам динамических языков, создающих или портирующих их в.NET Framework (следует отметить, что официально у Microsoft их два – IronRuby и IronPython, развивающиеся в виде открытых проектов на CodePlex.com), существующие языки со строгой типизацией также получили его поддержку. К примеру, в C# появился новый тип dynamic, переменные которого не проходят проверку типа во время компиляции, что может быть полезно при взаимодействии с динамическими и скриптовыми языками.

Следующее важное новшество.NET 4, отражающее дух времени – появление целой платформы для поддержки параллельных вычислений, именуемой PCP (Parallel Computing Platform). Безусловно, создавать «параллельные» приложения можно было и в предыдущих версиях.NET Framework, PCP же отличается подходом к их построению, призванным максимально облегчить жизнь разработчикам. Не секрет, что именно сложность распараллеливания задач и недостаточная приспособленность распространенных языков программирования к управлению потоками кода, исполняющимися параллельно, являются основными сдерживающими факторами, которые препятствуют эффективному использованию современным ПО возможностей многоядерных микропроцессоров. Поэтому PCP – долговременная инициатива Microsoft, состоящая в реализации отдельных компонентов, и вполне заслуживает особого рассмотрения. Если говорить коротко о наиболее интересных возможностях PCP, то следует выделить Task Parallel Library (TPL) и Parallel LINQ (PLINQ). TPL представляет собой набор классов и API для автоматического распараллеливания задач. В частности, TPL предлагает варианты реализации циклов, предусматривающих параллельное исполнение итераций (если их результаты не зависят друг от друга) при автоматическом масштабировании по числу ядер процессора. На практике (если речь идет о циклах) использование TPL сводится к тому, что там, где возможно, разработчик заменяет обычные конструкции циклами с применением TPL и получает существенный выигрыш в производительности без каких-либо дополнительных действий вроде самостоятельного создания пула потоков и т. п. Соответственно, PLINQ – это эволюция декларативного языка для работы с данными LINQ, доступного для C#/VB. От обычного LINQ он отличается также возможностью автоматического распараллеливания запроса, если порядок возвращаемых данных или выполняемых операций не важен – достаточно просто указать в запросе, что его можно исполнять параллельно, все остальное возьмет на себя PLINQ.

Множеству усовершенствований подверглась и базовая библиотека классов BCL. В сопутствующей документации только заголовков разделов, посвященных новым функциям, около двух десятков. Не буду перечислять их полностью, отметим лишь некоторые, на мой взгляд, наиболее интересные. Поддержка длинной арифметики теперь становится стандартной функцией.NET Framework: появился класс BigInteger, а отдельные языки (F# в их числе) приобрели встроенную поддержку соответствующей структуры. Работа с изолированным хранилищем данных (Isolated Storage) для приложений с ограниченным доступом к файловой системе (относится в первую очередь к WPF-программам, исполняющимся в браузере, – XBAP, а также распространяемым по технологии ClickOnce) теперь полностью унифицирована с таковым для Silverlight-приложений. Улучшены инструменты ввода-вывода: запросы к файловой системе теперь возвращают коллекции вместо массивов, что увеличивает скорость работы в том случае, когда не требуется загружать весь список; статический тип File теперь содержит новые методы, позволяющие эффективно читать и записывать текстовые файлы с помощью LINQ, не создавая дополнительных структур данных; появилась поддержка стандартных для ОС Windows отображаемых в память (memory mapped) файлов, что ранее было возможно только посредством сторонних библиотек; улучшились алгоритмы компрессии из пространства имен System.IO.Compression, а также устранен существующий ранее лимит в 4 ГБ на максимальный размер сжимаемого потока данных. Кроме того, расширены механизмы мониторинга производительности и используемых ресурсов, усовершенствованы технологии управления и синхронизации потоков.

ASP.NET 4.0

ASP.NET — технология создания веб-приложений и веб-сервисов от компании Майкрософт. Она является составной частью платформы Microsoft.NET и развитием более старой технологии Microsoft ASP.

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

Хотя ASP.NET берёт своё название от старой технологии Microsoft ASP, она значительно от неё отличается. Microsoft полностью перестроила ASP.NET, основываясь на Common Language Runtime (CLR), который является основой всех приложений Microsoft.NET. Разработчики могут писать код для ASP.NET, используя практически любые языки программирования, в том числе, и входящие в комплект.NET Framework (C#, Visual Basic.NET, и JScript.NET). ASP.NET имеет преимущество в скорости по сравнению со скриптовыми технологиями, так как при первом обращении код компилируется и помещается в специальный кэш, и впоследствии только исполняется, не требуя затрат времени на парсинг, оптимизацию, и т. д.

Преимущества ASP.NET

ASP.NET - производная от HTML и.NET(XML и XAML соответственно). При этом, если обычно Rich Media Application создают при помощи Flash, теперь это делается с помощью модуля Silverlight, так же через сам ASP.NET. ASP.NET – богатейшая среда для разработки и развёртывания веб-ресурсов. В ASP.NET можно работать с любым.NET языком, вплоть до Managed C++ и Visual Basic.

ASP.NET обладает следующими значительными преимуществами:

- компилируемый код выполняется быстрее, большинство ошибок отлавливается ещё на стадии разработки;

- значительно улучшенная обработка ошибок времени выполнения, с использованием блоков try..catch;

- пользовательские элементы управления (controls) позволяют выделять часто используемые шаблоны, такие как меню сайта;

- использование метафор, уже применяющихся в Windows-приложениях, например, таких как элементы управления и события;

- расширяемый набор элементов управления и библиотек классов позволяет быстрее разрабатывать приложения;

- ASP.NET опирается на многоязыковые возможности.NET, что позволяет писать код страниц на VB.NET, Delphi.NET, Visual C#, J# и т. д;

- возможность кэширования всей страницы или её части для увеличения производительности;

- возможность кэширования данных, используемых на странице;

- возможность разделения визуальной части и бизнес-логики по разным файлам («code behind»);

- расширяемая модель обработки запросов;

- расширенная событийная модель;

- расширяемая модель серверных элементов управления;

- наличие master-страниц для задания шаблонов оформления страниц;

- поддержка CRUD-операций при работе с таблицами через GridView;

- встроенная поддержка AJAX;

- ASP.NET имеет преимущество в скорости по сравнению с другими технологиями, основанными на скриптах.

 



Поделиться:


Последнее изменение этой страницы: 2016-09-05; просмотров: 234; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.141.202 (0.029 с.)