Microsoft Visual Studio — линейка продуктов компании
Microsoft, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств.
Введение. Первая версия Visual Studio (1995) и ее популярность
Иитегрированная среда Microsoft Visual Studio берет свое начало с 1995 года, когда была выпущена первая версия продукта под таким названием. До этого в начале 1990-х гг. Microsoft выпускала отдельные продукты для поддержки программирования на языках высокого уровня:
Microsoft Visual C++ - интерактивная среда программирования на языке Visual C++, расширении языка
C++, разработанном и реализованном фирмой Microsoft. Язык Visual C++ в составе всех версий Visual Studio и ныне остается наиболее популярным и широко используемым языком программирования в мире;
Visual Basic - объектно-ориентированное расширение языка
BASIC, разработанное и реализованное фирмой Microsoft, которое сразу начало активно использоваться программистами всего мира, так как сочетало в себе простоту языка BASIC с новейшими объектно-ориентированными расширениями. Многие коллеги- программисты еще в начале 1990-х гг. рассказывали об удобстве Visual Basic и предпочитали именно на нем разрабатывать программы управления GUI;
Microsoft Visual FoxPro - интерактивная среда программирования на языке
Visual FoxPro - объектно-ориентированном языке с элементами процедурного программирования, разработанном под названием FoxBase первоначально небольшой фирмой Fox Software. Привлекательной чертой этого языка для многих пользователей стали возможности обращения непосредственно из программы на этом языке к базам данных, основанных на языке
SQL, в частности, программирование SQL-запросов на языке FoxPro;
Microsoft Visual SourceSafe - разработанная фирмой Microsoft система управления версиями исходных кодов, впоследствии интегрированная со средой Visual Studio.
Все эти продукты были объединены с 1995 г. "под одной крышей" под названием Visual Studio. Новая среда получила сразу номер версии 4.0, видимо, потому, что в отдельном виде описанные выше компоненты среды уже выпускались до этого в течение нескольких лет.
Даже в столь ранней версии среда Visual Studio обрела весьма широкую популярность. Например, фирма
Sun Microsystems, которая в том же 1995 г. выпустила новый язык и технологию программирования
Java, - в качестве основы для реализации своих платформно-независимых Java-библиотек Abstract Windows Toolkit (AWT) для поддержки разработки GUI для платформы Windows использовала именно среду Visual Studio и реализованный в ней язык Visual C++.
В 1990-х гг. в среде наших университетских программистов среда Visual Studio называлась ласковым дружеским именем "вижуалка", с ударением на первое "а". Это не случайно: среда Visual Studio уже к тому времени стала надежным партнером в разработках наших программистов, что подтверждает дружественность и удобство ее интерфейса. Для сравнения, к тому времени та же фирма Sun не имела столь же популярной среды программирования. Среда NetBeans для программирования на Java появилась немного позднее - в 1997 году, как результат работы небольшой группы пражских студентов-программистов из Карлова университета. Важную роль в широком распространении среды Visual Studio внесла подписка на MSDN (Microsoft Developers' Network), благодаря которой стало возможным получать новейшие программные разработки Microsoft.
Visual Studio 97 (5.0)
Новая (пятая) версия Visual Studio, известная также как Visual Studio 97 и под кодовым названием
Boston, была выпущена в 1997 году. Ее новыми возможностями и инструментами стали
Visual Studio InterDev - инструмент разработки интерактивных
Web-сайтов на основе технологии
ASP (Active Server Pages) - и Visual Java++ - среда программирования на Java "от Microsoft".
Технология ASP - выдающаяся разработка фирмы Microsoft в области Web-программирования, появилась в 1994-1995 гг. Предназначена для разработки
активных Web-страниц - шаблонов для генерации
HTML-страниц для клиентских
браузеров в качестве ответов на Web-запросы. Она используется до сих пор на многих сайтах. На ее основе впоследствии была разработана технология ASP.NET.
Что касается инструмента Visual Java++, то с ним связаны события совсем другого рода - иногда подобное, к сожалению, происходят в мире ИТ, что неизбежно при острой конкуренции компаний. Фирма Microsoft познакомилась с новой Java-технологией фирмы Sun и, в качестве ответа на нее в конкуренции с фирмой Sun, разработала собственное расширение языка Java и реализовала его в новой среде под названием Visual Java++. Однако, к сожалению, эти действия не вполне соответствовали официальному порядку реализации Java, введенному фирмой Sun. До сих пор (хотя ныне владельцем Java-технологии является фирма
Oracle, этот порядок фактически не изменился) название Java является официально зарегистрированным товарным знаком. Поэтому, чтобы выпустить новую реализацию Java, необходимо приобрести лицензию у фирмы-владельца Java-технологии, и пропустить для новой реализации Java специальный набор тестов на реализацию языка, библиотек и виртуальной машины, под названием Java Compatibility Kit (JCK) для проверки соответствия реализации ведомственным стандартам Java. Только если все эти тесты полностью, на 100%, пройдут, новая реализация получает право именоваться "Java".
К сожалению, для реализации Visual Java++ фирмы Microsoft тесты JCK не прошли, ввиду реализованных в системе Visual Java++ расширений языка. Дело вылилось, к сожалнению для обеих компаний, в длительное судебным разбирательство между Sun и Microsoft, которое было выиграно фирмой Sun, в результате чего продукт фирмы Microsoft был переименован в VJ++ (без явного упоминания названия Java). С моей точки зрения, подобные инциденты хотя и неизбежны, но весьма нежелательны, так как с обеих сторон в них участвуют, иногда в течение нескольких лет, выдающиеся технические специалисты, тратя на все это много времени, сил и здоровья. Однако впоследствии, в 2004 году, фирмы Sun и Microsoft пришли к мировому соглашению, заключив беспрецедентное соглашение об интеллектуальной собственности сроком на 10 лет.
Таким образом, версия Visual Studio 5.0 является интегрированной средой программирования на языках Visual C++, Visual Basic, VJ++, имеющей в своем составе также инструмент Visual Studio InterDev для разработки интерактивных Web-сайтов по технологии ASP.
Visual Studio 6.0 (1998)
Следующая версия Visual Studio (6.0, под кодовым названием Aspen) вышла в 1998 году. В нее, кроме уже новых версий уже известных нам компонент - Visual C++, Visual Basic, VJ++ и InterDev, (в максимальном варианте - Visual Studio Enterprise Edition) вошли также следующие новые компоненты для поддержки визуального моделирования и анализа производительности программ:
1. Application Performance Explorer
2. Automation Manager
3. Microsoft Visual Modeler
4. RemAuto Connection Manager
5. Visual Studio Analyzer
Visual Studio 6.0 - версия, использованная фирмой Microsoft в качестве основы для создания новой версии интегрированной среды, включающей единую многоязыковую виртуальную платформу для выполнения программ - .NET.
Visual Studio.NET (2002)
Версия Visual Studio 7.0, известная также под названием Visual Studio.NET и под кодовым названием Rainier, была выпущена в 2002 году. Наиболее важное нововведение в данной версии - реализация многоязыковой платформы
.NET Framework, обеспечивающей надежное и безопасное программирование с полным контролем типов и безопасности на базе управляемого кода (managed code), общей инфраструктуры языков (Common Language Infrastructure - CLI), единого промежуточного языка (Common Intermediate Language - CIL), общей системы типов (Common Type System - CTS).
На платформе .NET все
компиляторы транслируют исходный код с соответствующего языка (
C#, C++, Visual Basic и т.д.) в бинарный формат единого промежуточного кода CIL - постфиксную запись инструкций виртуальной машины .NET - Virtual Execution System (VES). Обеспечиваются: совместимость в рамках одного .NET-приложения кодов, откомпилированных с различных языков; единый механизм контроля типов и безопасности на основе метаданных; единая среда выполнения, включающая единый многоязыковый механизм обработки исключений.
Версия Visual Studio .NET 2002 была выпущена в четырех вариантах (изданиях): Academic, Professional, Enterprise Developer, Enterprise Architect.
Поистине замечательные изменения и дополнения были реализованы в языках, поддерживаемых в среде Visual Studio.
Прежде всего, был разработан и реализован новый язык программирования - C#, на мой взгляд - наиболее мощный, современный и полный язык программирования в настоящее время.
Значительные расширения были реализованы в языках Visual C++ и Visual Basic. Фактически, несмотря на некоторую разницу в синтаксисе, эти языки стали "равновеликими" языку C#, предоставляя почти аналогичные возможности. Новая версия языка Visual C++, совместимая с .NET, получила название Managed C++, а новая версия языка Visual Basic, совместимая с .NET, - название Visual Basic.NET.
Visual Studio.NET 2003
В следующем, 2003 году была выпущена новая версия Visual Studio.NET под кодовым названием
Everett. С точки зрения развития продукта в целом, данная версия не внесла существенных изменений: основная цель выпуска новой версии состояла в том, чтобы обеспечить обновление до версии .NET Framework 1.1. Однако весьма важным нововведением Visual Studio 2003 была реализация версии .NET для мобильных устройств - .NET Compact Framework и поддержка разработки приложений для мобильных устройств средствами Visual Studio.
Как и предыдущая версия, Visual Studio 2003 выпущена в четырех изданиях: Academic, Professional, Enterprise Developer, Enterprise Architect. Причем в "максимальном" варианте - Enterprise Architect - в Visual Studio 2003 реализована поддержка средств моделирования программ в стиле другого популярного продукта - Microsoft Visio, в том числе - поддержка UML-диаграмм, визуализирующих архитектуру приложения.
Visual Studio.NET 2005
Следующая версия интегрированной среды Visual Studio 2005 (под кодовым названием Whidbey) вышла в 2005 году.
Основные нововведения версии касались параметризованных типов данных (generics). Они были реализованы в версии языка C# 2.0 и в .NET Framework 2.0. Интересно отметить, что в это же время аналогичные возможности были реализованы в языке Java 1.5, однако подчеркнем, что механизм generics на платформе .NET и в языке C# реализован в более удобном, гибком и расширенном варианте, по сравнению с Java.
Другая группа усовершенствований касалась ASP.NET - развития технологии ASP, предназначенной для реализаци и активных Web-страниц, в сочетании с надежностью и безопасностью кода, присущими платформе .NET. В версии Visual Studio 2005 впервые были реализованы дополнительные виды проектов для поддержки концепции ASP.NET Web-сервисов. Отметим, что средства Web-программирования в .NET заслуживают особого внимания для изучающих эту платформу и Web-программирование в целом. Только ради одного их изучения и использования каждый программист должен хорошо знать платформу .NET и практически владеть ею.
Для нашей команды разработчиков системы аспектно-ориентированного программирования Aspect.NET версия Visual Studio 2005 сыграла особую роль. Именно для этой версии среды Visual Studio был реализован plug-in под названием Aspect.NET Framework - GUI для управления аспектами в стиле, близком к визуальному стилю самой интегрированной среды. Интерактивные возможности и удобство Aspect.NET были высоко оценены пользователями, и именно в этом варианте система Aspect.NET распространилась в 26 странах мира. О дальнейшем развитии Aspect.NET - речь дальше в последующих лекциях данного курса.
Другой наш известный проект, реализованный как plug-in к Visual Studio.NET 2005, - это проект Knowledge.NET, расширение языка C# средствами представления знаний (фреймами, наборами правил, онтологиями), позволяющий сочетать традиционный стиль программирования на языке C # с использованием знаний. Система Knowledge.NET использована десятками наших студентов и аспирантов при разработке интеллектуальных решений, использующих знания.
Visual Studio.NET 2008
В 2008 году была выпущена следующая версия Visual Studio - Visual Studio.NET 2008 (
Orcas). Внутренний номер версии среды Visual Studio в корпорации Microsoft - Visual Studio 9. Эти номера полезно иметь в виду, так как при описании развития Visual Studio сотрудники Microsoft (например, в блогах) часто используют эти внутренние номера версий. Версия Visual Studio 2008 предназначена для
ОС Windows Vista. Она соответствует версии другого популярного продукта
Microsoft Office 2007 и содержит развитые средства поддержки Web-программирования. Версия .NET Framework, соответствующая версии Visual Studio 2008, - это .NET Framework 3.5.
В версии VS 2008 введен новый визуальный дизайнер приложений, использующих Windows Presentation Foundation (WPF) - API для поддержки GUI.
В отладчике VS 2008 реализована поддержка отладки многопоточных приложений.
В версию VS 2008 впервые не была включена поддержка языка
J#, - расширения языка Java фирмы Microsoft, о котором говорилось выше. Вместо этого пользователям был предложен входящий в среду инструмент Java Language Converter Assiatant (JLCA) для переноса приложений из языка и среды Java в среду .NET.
Версия VS 2008 - на данный момент последняя версия среды Visual Studio, в которой имеется поддержка важного для меня и моей научной школы внутреннего продукта Microsoft -
Phoenix, инструментария для разработки оптимизирующих компиляторов и языковых
процессоров. Это совместный продукт Microsoft Research и Microsoft Product Team. Мы используем Phoenix для реализации внедрения (weaving) аспектов в целевые приложения в системе Aspect.NET, так как Phoenix имеет удобное высокоуровневое внутреннее представление - Phoenix High-Level IR (HIR), в терминах которого удобно выполнять трансформации программ. Также Phoenix содержит удобный инструмент для генерации бинарной сборки .NET по этому внутреннему представлению, который и выполняет в нашей системе Aspect.NET генерацию результирующей бинарной сборки после внедрения в нее аспектов. В настоящее время Phoenix используется для проекта Microsoft Research Midori - новой операционной системы, написанной полностью в среде .NET на managed-коде.
Visual Studio.NET 2010
В апреле 2010 г. была выпущена версия Visual Studio 2010.
Я присутствовал на торжественной церемонии "запуска" (launch) Visual Studio 2010 в Петербурге, в гостинице "Прибалтийская". Был сделан ряд интересных докладов и демонстраций, в том числе - доклад ведущего разработчика Visual Studio менеджера Microsoft Брайана Харри (Brian Harry), после которого я имел удовольствие лично с ним познакомиться. Я предложил тогда включить нашу систему Aspect.NET в поставку будущих версий Visual Studio, поскольку считаю, что наша система АОП достаточно хорошо известна и хорошо подходит по своим возможностям, по стилю и по степени интегрируемости с Visual Studio для широкого распространения АОП в мире в качестве одной из альтернативных повседневных технологий (ubiquitous technologies), входящих в широчайший набор технологий, поддерживаемых в Visual Studio. Мое предложение остается в силе и по сей день, тем более что современная версия Aspect.NET совместима с новейшей версией Visual Studio 2013.
Наиболее важное нововведение в Visual Studio (внутренний номер версии - 10, кодовое название - Dev10) - появление в "джентльменском наборе" поддерживаемых языков еще одного языка - функционального языка F#. Автором языка является Дон Сайм (Don Syme) из Microsoft Research,
Кембридж, Великобритания. Язык F# сочетает в себе возможности чисто функционального программирования со средствами объектно-ориентированного программирования, параллельного программирования и средствами интеграции со всеми остальными возможностями .NET Framework и Visual Studio. Это весьма перспективный язык, нашедший себе много приверженцев, в особенности среди молодых программистов.
Первоначально планировалось, что в состав Visual Studio 2010 войдет продукт Phoenix и разработанный на его основе оптимизирующий компилятор с языка Visual C++, который должен был по производительности генерируемого бинарного кода превзойти имеющуюся, прежнюю, версию компилятора Visual C++. Однако, к сожалению, эти планы не были осуществлены - команда Phoenix не уложилась в сроки, поставленные руководством проекта Visual Studio.
В "максимальной" версии - Visual Studio 2010 Ultimate - имеются средства отображения структуры проектов с помощью UML-диаграмм, а также компонента Test Impact Analysis для оценки влияния модификации исходного кода проекта на пропускаемые группы тестов, что удобно, так как позволяет избежать излишних пропусков тестов. Имеется также отладчик IntelliTrace, позволяющий запоминать историю отладки и полностью ее состояние, включая историю многопоточности (а не только стек текущего потока).
Следует отметить поддержку в Visual Studio 2010 облачных вычислений. Для этого появились новые виды проектов Microsoft Azure Project. Для их использования необходимо инсталлировать для Visual Studio 2010 специальный инструментарий - Microsoft Azure SDK.
Visual Studio 2012
В августе 2012 года вышла версия Visual Studio 2012 под кодовым названием Metro Theme. В ней был улучшен пользовательский интерфейс, разработан новый инструмент просмотра проектов (solution explorer), улучшена поддержка цветов для выделения фрагментов кода. Как отмечает Microsoft, общий размер исходного кода для Visual Studio 2012 достиг 50 миллионов (!) строк.
Резюме
Интегрированная среда разработки программ Microsoft Visual Studio является уникальным примером активного инновационного развития и воплощает в себе целый сплав новых идей и инструментов в области разработки программного обеспечения.. За 19 лет, с 1995 г., выпущено 12 ее версий, каждая из которых содержит большое число нововведений, включая новые языки программирования, средства командной разработки программ и многие другие.
Ключевые термины
.NET - объектно-ориентированная многоязыковая платформа программирования, стандартизированная международными стандартами ISO и имеющая несколько реализаций, в том числе - Microsoft.NET, разработанную фирмой Microsoft
C# - новейший объектно-ориентированный язык программирования, разработанный и активно развиваемый фирмой Microsoft, являющийся основным языком программирования для платформы .NET
Visual Basic - язык программирования, объектно-ориентированное расширение языка Basic, разработанный и развиваемый фирмой Microsoft
Visual C++ - язык программирования, расширение языка C++, разработанное и развиваемое фирмой Microsoft
Visual FoxPro - один из ранних объектно-ориентированных языков программирования, разработанный фирмой Microsoft, содержащий средства обращения к базам данных, совместимым с языком запросов SQL
Visual Studio - интегрированная среда разработки фирмы Microsoft.
Краткие итоги
Интегрированная среда Visual Studio активно развивается фирмой Microsoft и является одной из наиболее популярных в мире интегрированных сред разработки. За 19 лет выпущено 12 версий среды Visual Studio, реализованы такие новые языки, как C#, Visual C++ (и его расширение Managed C++ для платформы .NET), Visual Basic и его расширение для платформы .NET, функциональный язык F#, средства управления проектами, средства коллективной разработки и тестирования программ, средства разработки облачных приложений для платформы Microsoft Azure; выпущена и активно развивается многоязыковая объектно-ориентированная платформа Microsoft.NET. Все эти результаты являются уникальными, инновационными, новейшими, имеющими широкое распространение в мире.
© greenmile
Источники: www.intuit.ru
В начало