Visual Studio / Первые впечатления от Visual Studio 11

в 15:54, , рубрики: Visual Studio, Visual Studio 11, метки: ,

Первое впечатление от интерфейса очень напоминает то ощущение, которое вызвал Microsoft Office 2007 после 2003. И если первое время скорость работы с 2007 была заметно ниже, то уже через пару недель было не очень понятно, чего это мне здесь не нравилось. С Visual Studio 11, по всей видимости, будет также.

0. Семинар «Новые возможности для управления проектами в Team Foundation Server 2012» 2 марта 2012

Семинар вел dmandreev. Он в начале семинара опросил аудиторию и был приятно удивлен, что практически все присутствующие уже имели опыт работы с TFS 2010. За 8 часов мы успели под руководством <a rel="nofollow" href="http://habrahabr.ru/users/dmandreev/" class="user_link">dmandreev: создать командный проект по шаблону Scrum 2.0, запланировать Backlog, внести 3 членов команды, уйти в первый спринт, написать задачи, распределить их по разработчикам, написать проект из 3-х частей (демонстрационный, конечно, с одним методом), написать модульные тесты, собрать проект на Build Server-е, отдать на тестирование тестировщику, от его лица протестировать, для Product Backlog Item-ов автоматизированно создать Test Case-ы, найти Bug, его исправить, помедитировать на красивые графики, иллюстрирующие статистику работы над проектами. И все это за 8 часов минус обед и два кофе-брейка. Так что, все это в VS 11 сделать не только можно, но даже делая в первый раз не очень сложно (ну, по крайней мере, переходя с VS 2010 и Scrum 1.0).

1. Совместимость

Здесь уже все хорошо, по крайней мере, скачав 29 февраля дистрибутив Visual Studio 11 и поставив 1 марта его на рабочий компьютер, я без проблем подключился к TFS 2010, скачал оттуда рабочий проект, скомпилировал его и запустил. С учетом того, что решение состоит из веб-приложения, включает Entity Model, RIA сервисы, Silverlight, то можно сказать, что все просто замечательно. Единственное, что не заработало это t4 шаблоны, которые мы используем для генерации классов RIA сервисов. Но стандартные средства вполне работоспособны, просто придется каждый раз допиливать ручками. Да и к релизу Visual Studio, я думаю, все будет поправлено.

2. Dependency Graph

Очень понравился новый Dependency Graph. Несмотря на то, что в VS 2010, казалось бы, возможностей было больше:
image
Функционал стал намного удобнее и нагляднее. Взять хотя бы легенду. В VS 2010 в нее были вынесены основные элементы (цветовая дифференциация) и можно было добавлять свои элементы для пометки конструкторов и/или других элементов диаграмм:
image
То в VS 11 легенда настроена сразу:
image
И единственно, что выделяется цветом, это ссылка на базовые сборки .Net. Визуально от этого диаграмма стала значительно лучше:
image

3. Unit test

Интересующиеся этим вопросом, наверно уже в курсе, в тестировании было предложено много нововведений: асинхронное выполнение тестов; подключение в стандартный Test Explorer сторонних, по отношению к Microsoft, библиотек тестирования. Но лично я ждал появления VS 11, чтобы посмотреть модульные тесты для Silverlight.
Для реализации MVVM у нас есть пара базовых классов, для поддержки данного паттерна. Я решил попробовать переписать эти классы в стиле TDD, для проверки модульных тестов. Создал сборку Silverlight Class Library, создал Unit Test Project и попробовал в него добавить ссылку на Silverlight сборку. Ссылка пометилась восклицательным знаком, но см. рисунок ниже, тесты заработали.
image
Самое интересное началось чуть позже. При попытке реализовать интерфейс ICommand. Начали падать ошибки компиляции:
image
Судя по ошибке, в проекте с тестами не хватает ссылки на сборку System.Windows. Вроде чего проще, добавляем ссылку на соответствующую сборку и вперед. Но все оказалось не так просто. При попытке добавить ссылку через список сборок, ее там нет (на рисунке видна версия 4.0.0.0, а по ошибке нужна 5.0.5.0):
image
Не очень расстроившись, я нашел нужную сборку в файловой системе и попробовал подключить через Browse. И она даже добавилась, но при попытке построения ошибка осталась. При просмотре версии подключенной сборки в Object Browser, она все равно осталась 4.0.0.0:
image
Так что с Unit Test-ами для Silverlight пока не понятно. Вполне возможно, что это баги бетты.

4. Встроенная интеграция с Power Tools

По умолчанию добавилась поддержка наиболее полезных элементов. Ссылки через новый Reference Manager добавлять значительно удобнее, а работает он не в пример быстрее встроенного в VS 2010. Еще, например, есть мои любимые Pin-ы для вкладок:
image
И соответственно, если у вас есть закрепленные вкладки, в контекстном меню есть пункт:
image
Очень порадовало то, что теперь нет (в отличие от Power Tool) перехода к описанию метода по Ctrl+Click. Данная функция, по крайней мере меня, очень сильно раздражала, и приходилось лазить по настройкам и ее отключать.

Выводы

Продукт получился как минимум быстрее. Многие вещи стали намного удобнее. Ну а с недостатками, я очень надеюсь, команда Microsoft к релизу благополучно справится.

Автор: Teacher

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js