27-го июля Microsoft выпустила вторую бета версию Visual Studio 2008 и .NET Framework 3.5. По поводу окончательного релиза Doug Seven, Senior Product Manager for Visual Studio Team System пишет в своем блоге:
While the launch events are scheduled to kick off on February 27, 2008, Visual Studio 2008 will be released before the end of the year."
Т.е., имеется вероятность того, что в конце года мы сможем перейти на новую студию и фреймворк 3.5. Но уже сейчас можно использовать .NET Framework 3.5 в коммерческих приложениях, т.к. он распространяется под, так называемой, go-live лицензией.
Итак, какие же новые возможности появятся у разработчиков при переходе на новую версию?
Поддержка нескольких версий .NET Framework (Multi-Targeting Support)
VS 2008 позволяет выбирать версию .NET Framework для проекта. Это значит, что вы можете использовать VS 2008 для своих проектов на .NET Framework 2.0 (например). Учитывая новые возможности, о которых рассказывается дальше, это очень полезное свойство новой студии, т.к. позволяет безболезненно перейти на новую IDE.
Новый Web Designer с поддержкой CSS
В VS 2008 существенно улучшен HTML Web Designer:
- Появился режим редактирования Split View, в котором одновременно отображаются и html код и дизайн страницы (аналогично тому, как это сделано в Macromedia Dreamweaver).
- Новое "Manage Styles" tool window, которое отображает все CSS стили с соответствующими правилами для редактируемой страницы.
- При выделении HTML элемента или серверного ASP.NET контрола новое CSS property window отображает все CSS свойства выделенного элемента и позволяет их редактировать.
- Поддержка Intellisense для CSS стилей.
- Вложенные Master Pages.
Поддержка ASP.NET AJAX и JavaScript
.NET 3.5 включает в себя ASP.NET AJAX. VS 2008, также, поддерживает JavaScript и AJAX в ваших приложениях.
LINQ и улучшения языка
Самые интересные, на мой взгляд, "фичи". LINQ (language integrated query, интегрированный язык запросов, произносится как "линк") вносит новую идеологию в работу с данными. С его помощью, используя SQL подобные запросы, можно получать данные из различных источников: .NET коллекций (и вообще, из любых объектов, имплиментирующих интерфейс IEnumerable<T>), XML, БД.
Особый интерес представляют части LINQ, называемые LINQ to SQL и LINQ to Entitis. С их помощью можно наполнять данными объекты домена (domain objects), представляющие собой модель предметной области. По сути, эти компоненты выполняют те же задачи, что и широко распространенная библиотека NHibernate, но при этом более тесно интегрированы с другими частями фреймворка. При этом, LINQ to SQL позволяет создвать простые зависимости между БД и объектной моделью, а LINQ to Entitis более сложные. К сожалению, релиз LINQ to Entitis ожидается в 2008 году, после выхода .NET Framework 3.5.
Вместе с LINQ в язык добавлены новые конструкции:
- автоматические свойства (Automatic Properties)
- инициализация объектов (Object Initializer)
- лямбда выражения (Lambda Expressions)
- синтаксис запросов (Query Syntax)
- расширяющие методы (Extension Methods)
- анонимные типы (Anonymous Types)
Другие улучшения
Кроме выше описанных, имеется много других улучшений: WPF designer (для VS 2005 можно установить бесплатный Add-on), WCF и Workflow проекты и дизайнеры, значительные усовершенствования в разработке приложений под Office и много другого.