Как открыть обозреватель решений. Настройка интегрированной среды разработки. Добавление ссылок на службы

Теперь, когда мы разобрались с некоторыми общими вопросами, я покажу этапы разработки персонажа, нарисованного специально для этой статьи. Кто он, и чем занимается теперь – науке не известно. Однако, до того как стать человеком, он был старым пнем ивы, которая дала побеги;) Похоже, это – древовидный туземец.

С чего начинать рисовать скетч? Лучше всего сделать пару набросков в любой технике, любыми материалами. Наброски помогут определиться с композицией фигуры, ее образом. Много времени, это не займет, но работу облегчит существенно.

Таких набросков может быть от 2 до 10, на ваш выбор. Затем можно приступать к рисованию уже непосредственно на формате. На данном этапе мы намечаем положение фигуры, ее основные пропорции.

Продолжаем прорабатывать общую массу фигуры в листе.

Начинаем намечать некоторые детали (внимание к деталям – это святое правило для любого концепт-художника!):

Приблизительно на этом этапе можно давать тоновую штриховку.

Продолжаем набирать тон.

Разрабатываем декоративные детали, показываем что парень – дерево, даем легкую фактуру на коже.

Увеличиваем контурную контрастность. Добавляем браслеты.

Даем «цвет» коже, прорабатываем контрастность, поправляем, подрисовываем, работа близится к завершению.

Скажу честно, изначально планировалось бумагу затонировать, и белой пастелью сделать красивые блики. Но острая нехватка времени заставила пойти не столь творчески путем и выполнить тонирование посредством Adobe Photoshop:)

Добавляем пару бликов… Вот и готов наш древовидный туземец! :)

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

1. С чего начинается разработка игры в молодой, еще только формирующейся команде? Обычно, если есть человек, который умеет рисовать, то он просто делает серию эскизов, приблизительно соответствующих тематике будущей игры. В чем сразу проявляется ошибка? А в том, что все делается «приблизительно», нет четкой задачи, нет четкой темы, а есть, по сути, просто пару рисунков, ничего не говорящих о графическом стиле игры, поскольку, тот, кто над ними работал, об этом не сильно задумывался. Вывод: нужно начинать рисовать скетчи уже после того, как появятся наработки по концепции игры и сценарию. А не пытаться потом «подогнать» эскизы персонажей, архитектуры и т.д. под игровой дизайн, разработанный позже. Вообще, рисовать концепты нужно, находясь в постоянном взаимодействии с гейм-дизайнером и сценаристом.

2. Команда уже определилась с тем, какой будет жанр и стиль будущего хита. Художник начинает рисовать эскизы, но сосредотачивается только на персонажах, или только оружии, или только автомобилях. Что неправильно? А неправильно то, что таким образом общий графический стиль игры не вырисовывается. Прорабатывать нужно все вместе и сразу. Архитектурная среда, флора, фауна, оружие, заклинания, а также шрифты, интерфейс и прочая графика – все это должно гармонично сочетаться в вашей игре.

3. Художник прорабатывает все вместе, он трудится день и ночь, создает большое количество набросков, а они почему-то производят положительное впечатление только на него и его близких соратников… Но, совершенно не нравятся игрокам или того хуже - издателю. Причина? Все дело в подаче! Лучшие из созданных набросков нужно аккуратно, тщательно перерисовать на чистовую. Это не пустая трата времени, это работа художника!

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

5. Внимание к деталям! Внимание к деталям! – проснувшись однажды от кошмарного сна, в котором на фоне джунглей из фильма «Апокалипсис сегодня», под музыку Doors, громогласный голос, летевший над липкими тропиками вместе с грохотом вертолетных пропеллеров монотонно поучал меня: «Внимание к деталям! Внимание к деталям!», я поняла – детали это очень важно, гораздо важнее, чем я думала раньше. С тех пор я никогда не забываю о необходимости добавить на одежду героев побольше швов, застежек, ремней, царапин и прочих «мелочей». Не забывайте и вы! :)

6. Опыт. Его ничем не заменишь. С опытом приходит понимание, с опытом приходит автоматизм и техничность. Так что, рисуйте, рисуйте, и еще раз рисуйте! Чем больше вы будете работать, тем большие возможности станут вам доступны.

7. В начале статьи говорилось уже о придумывании персонажа, и о том, что фантазию можно растратить нерационально. Все это действительно так. Но лучше всего вообще ничего не придумывать! Отпустите свой разум на свободу, ваше подсознание сделает все за вас, ведь в нем хранятся образы сотен тысяч людей, характеров, деталей! Живых, из фильмов, книг, игр, снов…

Пожалуй, этой семеркой советов-анализов, я пока ограничусь.

Но, теперь пришло время поговорить о подаче вашей графики. Как сделать так, чтобы посторонние люди (например, игроки), оценили вашу работу? Плохая подача, точнее отсутствие подачи как таковой (выдаем работу в «голом» виде, безо всяких украшательств), способно погубить даже очень неплохой замысел! Не показывайте игрокам или издателю свои наброски – в ваших «почеркушках», все равно никто не увидит того, что видите вы. А, кроме того, сложится впечатление, что эта не проработанная, не детализированная и по большому счету просто некрасивая работа (нужно называть вещи своими именами: даже гениальный набросок, с точки зрения обычного человека, не художника, может, увы, представляться не вразумительными каракулями) и есть ваш окончательный вариант. Поэтому к проблеме подачи нужно отнестись со всем пониманием, не нужно спешить за неделю нарисовать годовой объем графики в абы каком качестве – исполнение должно быть на самом высоком, вашем максимальном уровне! Красиво оформите свои эскизы, вспомните, насколько улучшает восприятие картины в традиционной живописи рамка или паспарту. Используйте фоны для своих эскизов: бумагу «под старину» для исторических и фэнтезийных тематик, оригинальные металлические пластинки для киберпанка. Подписывайте скетчи красивым, читаемым и соответствующим по стилю и размеру шрифтом, люди, которые будут их рассматривать должны знать, что изображено на картинке. Клаузуру можно также привести в подобающий вид. В общем, на стадии подачи очень важен грамотный дизайнерский подход, умение придать «товарный» вид своей работе.

В прошлом году подруга заразила меня темой концепт-арта - разработки персонажей и окружения для компьютерных игр. Я увлеклась, стала смотреть стримы и читать интервью с концепт-художниками, а также статьи о процессе разработки игр. И мне ужасно захотелось попробовать самой.

Я уже рассказывала в ЖЖ свою историю отношений с рисованием: был у меня довольно длинный период увлечения аниме, когда я рисовала аниме-персонажей гигантскими пачками, процесс мне очень нравился. Но тогда я была маленькая и глупая, и к процессу подходила бездумно - рисовала просто что-то. Поэтому в этот раз я решила подойти к разработке персонажа по-взрослому:)

Это один из самых больших проектов в этом году: я планирую выполнить концепт от начала и до конца - т.е. в результате у меня будет персонаж в цвете. Понятия не имею, как я буду это делать! Знаний по цвету у меня ноль с палочкой:)

Сегодня я хочу рассказать о первом большом этапе разработки персонажа - поиске силуэта. Эта тема меня отдельно заинтересовала, т.к. это работа с формой в чистом виде. Тут даже не нужно уметь рисовать:) И художники обещают, что это очень весело.

Я понятия не имела, с чего начать. В моей голове типичного аналитика существовало какое-то свое представление о процессе: я думала, что сначала необходимо разобрать персонажа как можно подробнее - определиться, кто он, чем занимается, в каком мире живет; написать его биографию, чтобы лучше понимать характер.

Для начала я ответила себе на вопросы “кто?”, “где?” и “чем занимается?”. Баба-пилот. Аргументация здесь простая: я люблю рисовать женщин, я не умею рисовать мужиков (и как-то пока не стремлюсь научиться), я люблю авиацию и все что с ней связано (хотя, ничего в этом не понимаю). Я выбрала мир стимпанка, потому что мне нравится стимпанк.

Я намеренно обошла стороной фентезийных и сайфайных персонажей, потому что с ними очень большой выбор вариантов как самого персонажа, так и дизайна. Решила, что для первого раза стоит взять что-то попроще:)

После этого я предприняла попытку написать биографию и разобраться с миром, в котором мой персонаж будет жить. В поисках информации о том, как это делать, я даже залезла в область разработки настольных игр! А также узнала много интересного про стимпанк.
К этому моменту я все еще ничего не нарисовала. И вообще находилась в растерянности, потому что чувствовала, что начинаю слишком заморачиваться с миром и персонажем - мне было непонятно, насколько глубоко копать. Копать ведь можно до бесконечности.

В итоге я решила посмотреть несколько стримов с концепт-художниками, чтобы понять, как нормальные люди к подходят процессу. И обнаружила интересное! Никто из художников не заморачивается заранее с историей персонажа. Обычно, на старте им достаточно знать, какому миру персонаж принадлежит (фентези, сайфай и т.п.), и то, чем персонаж занимается (маг, охотник, воин и т.д.). Если персонаж рисуется с нуля, а не по ТЗ, то этой информации достаточно для старта. Вообще, забегая вперед, скажу, что процесс создания персонажа с нуля - это бесконечный поиск, генерация и воплощение идей в рисунке. На каждом этапе.

Из стримов я также узнала, почему силуэт так важен. Художники говорят, что силуэт - это 70% узнаваемости персонажа. Отсюда вытекает, что силуэт должен содержать ключевую информацию о персонаже - характер (добрый, злой, стеснительный, кокетливый и т.п.) и род занятий (маг, стрелок, охотник, продавец булочек и т.д.).
В общем, после просмотра стримов, я перестала заморачиваться с подробной биографией, с доскональным изучением мира, и приступила к наброскам. И считаю, что это мой личный прорыв, потому что я еще долго могла бы сидеть в подготовительной стадии, пытаясь проработать всё и вся заранее:)

Первым делом я набросала пилота из головы, не заглядывая в референсы. Это я сделала по совету Ивана Смирнова - он предлагает сначала воспользоваться своей головой.

Сделала я этот набросок за пару минут на работе:) Почему-то мне хотелось нарядить своего персонажа непременно в пальто, что не очень функционально для пилота. Однако, копаясь в референсах, я узнала, что первые пилоты действительно в качестве верхней одежды приспособили кожаное пальто. И уже позже это пальто превратилось в легендарную летную куртку:)

Потом я поискала референсы, чтобы узнать, как же все-таки выглядят настоящие пилоты. Я намеренно гуглила пилотов несовременных - смотрела на одежду пилотов-первопроходцев и на пилотов первой мировой войны.
Моей задачей было выяснить характерные черты пилоты с точки зрения формы. После изучения референсов я выделила характерные черты, помимо куртки и очков: мешковатые штаны, куртки могут быть в двух вариантах - более теплый с меховой подкладкой и просто кожа (теплая крутка - более объемная, будет влиять на силуэт), толстые перчатки, большие ботинки. Всё это объяснялось довольно просто: первые самолеты не имели крытой кабины или она была негерметичной, поэтому пилоты были вынуждены очень тепло одеваться.

Я перевела все это в силуэты. Выглядели они уныло. На данном этапе я еще не думала над позой. Моей задачей было сделать такое пятно, в котором будет узнаваться пилот.


На картинке я подписала свои мысли, которыми я руководствовалась при выборе силуэта:)

Итак, я остановилась на втором варианте - он показался мне наиболее характерным. А дальше я наступила на первые грабли - принялась разбираться с выбранным силуэтом. Я совершенно забыла о том, что сделала только предварительный шаг - определила «архетип» пилота, какие-то элементы, без которых пилот - не пилот:) И самое интересное впереди - поиск характерного крутого силуэта именно для моего персонажа. В такие моменты хорошо иметь перед глазами какой-то пошаговый план - чтобы видеть картину своих действий в целом, а не катиться по инерции, как произошло со мной.

Тем не менее, я умудрилась получить полезный от этих граблей:)
Я задалась вопросом «Как можно улучшить выбранный силуэт?». Много информации я почерпнула в стримах. Здесь все сводится к работе над формой. Фотошопные инструменты «лассо» и «трансформирование» - наше всё :)

Работа с формой - это магия! Увеличил какой-то элемент, уменьшил другой - и силуэт совершенно иначе выглядит! Мне ужасно понравилось.
Но именно тут я поняла, что делаю что-то не то. Во-первых, я ожидала, что поиск силуэта и работа с ним будет более длительным процессом. И более веселым, наверное. Во-вторых, я смотрела на этот силуэт, и он казался мне ужасно скучным. Тут-то до меня дошло, что я поторопилась, и что поиск силуэта еще даже не начинала. Вместо этого сразу полезла его прорабатывать. А ведь, по сути, на данном этапе у меня было что? Некая база - набор обязательных элементов для пилота. То, что я ранее обозвала архетипом.
Зато я получила представление о том, что можно и нужно делать с итоговым силуэтом дальше:)

Осознав свою ошибку, я принялась рожать идеи - по-другому этот процесс не назовешь. У меня случился ступор длиной в несколько дней: я никак не могла придумать какие-то новые варианты силуэта. То расстраивалась из-за того, что слишком узко мыслю, то из-за того, что выбрала такого персонажа, который в принципе много вариаций не позволяет - слишком простой (в отличие, например, от мага).

Из тупика я вышла благодаря своему нытью: на работе пожаловалась коллеге-дизайнеру на свой творческий кризис, он предложил мне попробовать отталкиваться от характера. Возьми, говорит, за отправную точку, например, тот факт, что твой пилот - няша. И так далее - по разным характерам.

У меня было уже некое представление о характере моего персонажа. Но т.к. ранее я пыталась детально продумать его биографию, я немного зациклилась на том, что персонаж у меня добрый, открытый и так далее. Следуя совету коллеги, я очистила свой разум - забила на свои подробные представления о характере моего персонажа, и села рисовать, держа в голове только «бабу» и «пилота».
И это помогло! Я стала примерять ей разные характеры и набросала пару вариантов на работе в перерыве.

А потом дома перевела всё в силуэты и дополнила новыми идеями. Получилось целых 5 вариантов!

После нескольких дней ступора это был настоящий прорыв:)

Этих вариантов мне показалось мало. Художники в своих стримах малевали по 35 штук за раз. Мне хотелось также. Я даже вспомнила совет из какого-то стрима о том, как можно разнообразить форму, - добавлять инородные предметы, новые нетипичные формы. Но что можно добавить пилоту? Был вариант засунуть ей в руки сигару или трубку. Но как-то не понравился он мне. Короче, я снова впала в ступор. Посмотрела еще один стрим - про стилизацию и цвет. Это уже информация на будущие этапы работы. Но хоть какое-то полезное дело сделала.
А через несколько дней меня вдруг осенила идея. Я легла в кровать, намереваясь уснуть пораньше, но мой мозг решил, что наступил самый лучший момент для подумать. И выдал мне потрясающую в своей простоте мысль - добавить пилоту шарф! Я так обезумела от гениальности этой идеи, что подскочила с кровати, добежала до блокнота и быстренько зарисовала мысль, чтобы не забыть.

Я решила не заморачиваться больше с поиском силуэта (смирилась, да), выбрала силуэт «няши» неожиданно для самой себя. Добавила ей шарф и уверенности в себе. И начала работать с выбранным силуэтом. Ход своих мыслей я собрала в картиночки:

Самым удачным мне показался вариант 10. Он и был выбран для дальнейшей работы над персонажем.


Что я могу сказать в заключение? Я получила очень много полезной информации и опыта за сравнительно короткий срок. Я убедилась, что лучше всего получать знания на каких-то конкретных задачах.

Если кому интересно, я потратила только на силуэт около двух недель - занималась им почти каждый день по 1-3 часа после работы. Это очень долго. Иногда мне кажется, что я вообще никуда не двигаюсь. Но вот, пока писала пост, оценила объем проделанной работы - совсем немало для человека, который впервые занимается разработкой персонажа.

Еще я сделала вывод, что слишком заморачиваюсь там, где это не нужно. Моя системность и перфекционизм часто мне мешают. В случае с силуэтом я это кое-как победила, заставив себя перестать обстоятельно готовиться к работе и просто взявшись за нее. Забегая вперед, скажу, что ничему жизнь не учит: на эти грабли я продолжаю успешно наступать и при дальнейшей разработке персонажа:)

Мне ужасно нравится сам процесс. Новый опыт, все такое интересное. Хотя, без страданий не обходится: я постоянно сталкиваюсь с трудностями, т.к. мало что умею.

Зато я выучила много полезных сочетаний клавиш в фотошопе! И вспомнила, как здорово рисовать на планшете. Раньше я как-то с ним не дружила, а тут просто взяла в руки, и дело пошло. В конце концов, это просто другой инструмент:)

На этом у меня всё. Надеюсь, вам было интересно, и вы не умерли, читая эту гору текста:З

Окно Solution Explorer

Ранее вы кратко ознакомились с множеством компонентов, образующих среду интегрированной разработки Visual Studio 2013. Теперь вы получите возможность поработать с тремя наиболее широко используемыми инструментальными окнами - Solution Explorer, Toolbox и Properties.

Создавая или открывая приложение или просто отдельный файл, система Visual Studio 2013 использует концепцию решения (solution) для связывания всех компонентов в единое целое. Как правило, решение состоит из одного или нескольких проектов, каждый из которых, в свою очередь, содержит множество элементов, связанных с ним. В прошлом такими элементами были обычные файлы, но в настоящее время все чаще проекты создаются из элементов, которые образованы из нескольких файлов или вообще не включают в себя ни одного файла.

Инструментальное окно Solution Explorer (Ctrl+Alt+L) обеспечивает удобное визуальное представление решения, проектов и элементов, как показано на рисунке ниже. На этом рисунке представлены три проекта, образующих дерево: WPF-приложение на языке C#, служебная WCF-библиотека и библиотека классов.

С каждым проектом связана отдельная пиктограмма, которая, как правило, указывает тип проекта и язык, на котором он написан. У этого правила есть несколько исключений, например, проекты установки (setup projects) не имеют языка программирования, на котором они создаются.

Один из узлов обращает на себя особое внимание, поскольку он выделен полужирным шрифтом. Это значит, что этот проект является стартовым, иначе говоря, проектом, который запускается, когда вы выполняете команду Debug --> Start Debugging или нажимаете клавишу F5 . Для того чтобы сделать проект стартовым, щелкните на соответствующей пиктограмме правой кнопкой мыши и выполните команду Set as StartUp Project . Стартовыми можно сделать сразу несколько проектов. Для этого следует использовать диалоговое окно Solution Properties, которое открывается, когда вы щелкаете правой кнопкой мыши на узле Solution и выбираете пункт Properties.

Панель инструментов в верхней части окна Solution Explorer позволяет настроить внешний вид этого окна, а также задать комбинации клавиш для разного внешнего вида отдельных элементов. Например, кнопка Show All Files - открывает листинг решения и позволяет показать на экране дополнительные файлы и папки:

Вы видите, что узел Reference Library на самом деле состоит из нескольких файлов, содержащих настройки, ресурсы и информацию о сборке.

В этом развернутом представлении можно увидеть все файлы и папки, относящиеся к структуре проекта. К сожалению, при изменении файловой системы окно Solution Explorer не обновляется автоматически, чтобы отразить эти изменения. Для того чтобы обеспечить правильное представление списка файлов и папок, можно использовать кнопку Refresh .

Инструментальная панель Solution Explorer чувствительна к контексту, поэтому в зависимости от выбранного типа узла на ней отображаются разные кнопки.

Предпросмотр файлов

Одной из наиболее интересных особенностей Visual Studio 2013 является возможность предварительного просмотра файла в обозревателе решений. Для этого необходимо нажать кнопку "Preview Selected Items" и выбрать файл в окне Solution Explorer. На вкладке обзора появится файл и его содержимое:

Вы можете свободно перемещаться по файлу и редактировать его, как и любой другой файл. Тем не менее, при переходе к другому файлу в Solution Explorer, вкладка Preview заменяется новым файлом. Другими словами, режим предпросмотра служит для быстрого открытия и перемещения по файлам вашего проекта.

Типичные задачи

Кроме удобного способа управления проектами и элементами, окно Solution Explorer содержит динамическое контекстное меню, предоставляющее быстрое выполнение наиболее типичных задач, таких как сборка решений или отдельных проектов, обращение к менеджеру конфигурации сборки и открытие файлов. На рисунках ниже продемонстрировано, как изменяется контекстное меню в зависимости от того, какой элемент был выбран в окне Solution Explorer:

Если вы еще не включили в свой проект диаграмму классов, щелкните на кнопке View Class Diagram . После этого система автоматически добавит в ваш проект эту диаграмму и все классы. Если проект содержит много классов, то эта процедура может занять довольно много времени и в результате возникнет большая и неудобная диаграмма классов. Намного лучше добавлять диаграммы классов вручную, поскольку в таком случае пользователь сохраняет над ними полный контроль.

Первые пункты в левом и среднем меню связаны с созданием либо всего решения, либо выбранного проекта. В большинстве случаев эффективнее всего выполнить команду Build , поскольку она создает лишь те проекты, которые подверглись изменениям. Однако в некоторых случаях пользователю необходимо выполнить команду Rebuild , которая создает все взаимосвязанные проекты независимо от их состояния. Если вы хотите всего лишь удалить все дополнительные файлы, возникшие в процессе создания решения, то можете выполнить команду Clean . Эта команда может оказаться полезной, если вы хотите упаковать свое решение и послать его кому-нибудь в виде электронного письма и не хотите, чтобы при этом в него попали все временные файлы или файлы вывода, возникшие при создании решения.

Для большинства элементов в окне Solution Explorer первая команда контекстного меню похожа на команду, показанную на рисунке выше: по умолчанию команды Open и Open With... позволяют указать, как будет открыт конкретный элемент. Это особенно полезно при работе с ресурсными XML-файлами. Система Visual Studio 2013 открывает эти файлы, используя встроенный редактор ресурсов, но это не позволяет вам вносить определенные изменения и поддерживать все типы данных, которые вы хотели бы включить в проект (позже будет показано, как можно использовать свои собственные типы данных в файлах ресурсов). Используя команду Open With..., можно вызвать редактор XML Editor .

Контекстные меню для узлов Solution, Project и Folder содержат команду Open Folder in Windows Explorer , что позволяет быстро открыть окно проводника Windows для поиска выбранного элемента и не искать в каталогах свое решение.

Добавление проектов и элементов

К основным действиям, выполняемым в окне Solution Explorer, относятся добавление, удаление и переименование проектов и элементов. Для того чтобы добавить новый проект в существующее решение, следует выполнить команду Add --> New Project в контекстном меню, связанном с узлом Solution. В этом случае откроется диалоговое окно, показанное на рисунке ниже, которое с небольшими изменениями унаследовано от предыдущей версии системы Visual Studio. Теперь шаблоны проектов можно сортировать и искать.

Панель, показанная на рисунке, справа, содержит информацию о выбранном проекте, например его тип и описание. В иерархии Installed, появляющейся в левой части диалогового окна Add New Project, шаблоны в первую очередь упорядочены по языкам, а затем по технологиям. Среди шаблонов прежде всего следует выделить типы Office, позволяющие создавать как приложение, так и надстройки для документов, как это принято в большинстве приложений подобного рода. Хотя надстройки Office по-прежнему используют набор инструментов Visual Studio Tools for Office (VSTO), теперь он встроен в систему Visual Studio и не требует отдельной инсталляции.

Предусмотрены также закладки Recent и Online. Шаблоны Online можно сортировать и искать точно так же, как Installed, хотя критерии сортировки для них являются более широкими и включают в себя дату создания, рейтинги и частоту загрузки.

Кроме того, следует выделить еще одну особенность этого диалогового окна - возможность выбирать разные версии платформы. Если вы работаете со старым проектом и не хотите переводить его в новую версию платформы.NET Framework, то все равно можете воспользоваться новыми возможностями, такими как улучшенная технология IntelliSense. В противном случае пришлось бы инсталлировать как систему Visual Studio 2013, так и предыдущую версию, чтобы создавать проекты для более старых версий платформы. Выбор платформы также включен в критерии сортировки, что ограничивает список доступных шаблонов проекта лишь теми шаблонами, которые совместимы с выбранной версией платформы.NET Framework.

При открытии существующих решений или проектов в системе Visual Studio 2013 они проходят все этапы работы с мастером обновлений (upgrade wizard) , в ходе которых в файлы проектов и решений вносятся небольшие изменения. К сожалению эти небольшие изменения связаны с внедрением дополнительных свойств, которые разрушают существующий процесс сборки, если вы используете предыдущую версию системы сборки проектов MSBuild. По этой причине вы будете вынуждены перевести всю свою команду разработчиков на версию Visual Studio 2013.

Одной из наиболее неудачных и плохо понимаемых особенностей системы Visual Studio является концепция проекта Web Site. Этот проект отличается от проекта Web Application, который можно добавить с помощью диалогового окна Add --> New Project. Для того чтобы добавить проект Web Site, необходимо выполнить команду Add --> Web Site в контекстном меню, связанном с узлом Solution. Данная команда открывает диалоговое окно, похожее на то, которое показано на рисунке ниже. В этом окне можно выбрать тип создаваемого веб-проекта. В большинстве ситуаций при этом просто определяется тип создаваемого в проекте элемента, заданный по умолчанию.

Если вы работаете с одним или несколькими проектами, то сначала должны добавить элементы. Для этого выполните команду Add в контекстном меню, которое связано с узлом проекта в окне Solution Explorer. Первое подменю New Item запускает диалоговое окно Add New Item, как показано на рисунке ниже:

Подобно диалоговым окнам New Project и New Web Site, диалоговое окно Add New Item подверглось "косметической операции". Кроме перечисления только тех шаблонных элементов, которые являются релевантными выбранному проекту, это диалоговое окно позволяет искать установленные шаблоны, а также выходить в режим онлайн для поиска шаблонов, созданных другими.

Возвращаясь к контекстному меню Add, вы заметите большое количество заранее определенных сокращенных команд, таких как User Control и Class. Они делают немного больше, чем простой пропуск стадии поиска подходящего шаблона в диалоговом окне Add New Item. Это диалоговое окно по-прежнему открыто, поскольку вы должны задать имя создаваемого элемента.

Важно понимать, что вы добавляете в проект элементы, а не файлы. Хотя многие шаблоны содержат только один файл, некоторые команды, например Window или User Control, добавят в ваш проект несколько новых файлов.

Добавление ссылок

Выпуская новые технологии разработки программного обеспечения, их авторы каждый раз обещают более удобное повторное использование кода, но в действительности лишь некоторые из них выполняют данное обещание. Один из способов, с помощью которого Visual Studio 2013 поддерживает повторное использование компонентов, основан на ссылках проекта.

Раскрыв любой проект, вы обнаружите множество библиотек.NET Framework, например System и System.Core, на которые для создания проекта необходимо как-то сослаться. По существу, ссылки позволяют компилятору распознавать типы, свойства, поля и имена методов, определенные в сборке. Если хотите повторно использовать класс из сторонней библиотеки или вашу собственную сборку, созданную по технологии.NET, вы должны добавить ссылку на нее с помощью контекстного меню Add Reference , ассоциированного с узлом проекта в окне Solution Explorer.

Когда вы открываете диалоговое окно Add Reference, показанное на рисунке ниже, система Visual Studio 2013 исследует локальный компьютер, кэш глобальной сборки Global Assembly Cache и ваше решение, чтобы представить список известных библиотек, на которые можно ссылаться. Этот список содержит ссылки как на компоненты.NET, так и на компоненты COM, внося их в разные разделы, а также ссылки на проекты и недавно использованные ссылки.

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

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

Если ваше решение состоит из многих проектов (как правило, крупным считается решение, состоящее более чём из двадцати проектов), то можете разделить его на несколько решений, соответствующих разным подмножествам проектов. В этом случае вы обогатите свой опыт отладки целого приложения и одновременно повысите производительность системы Visual Studio на этапах загрузки и построения решения. В качестве альтернативы можете создать разные конфигурации построения решения, чтобы создать подмножество проектов.

Добавление ссылок на службы

Другой тип ссылок, который обслуживает проводник Solution Explorer, называется ссылками на службу (service references) . В предыдущих версиях системы Visual Studio они назывались веб-ссылками, но с появлением программной модели Windows Communication Foundation (WCF) в систему Visual Studio была включена более общая команда меню Add Service Reference . Она открывает диалоговое окно Add Service Reference, показанное на рисунке ниже. В данном примере использована возможность открывать выпадающее меню с помощью кнопки Discover, чтобы просмотреть список Services в решении.

К сожалению, это диалоговое окно еще раз демонстрирует, что компания Microsoft не совсем правильно понимает потребности пользователей. Хотя само диалоговое окно допускает изменение размеров, область для вывода ответного сообщения о статусе этого не позволяет, тем самым затрудняя чтение генерируемых сообщений об ошибках. К счастью, если при попытке системы Visual Studio 2013 получить доступ к информации о службе возникла ошибка, появляется гиперссылка, с помощью которой можно открыть диалоговое окно Add Service Reference Error. Как правило, это позволяет получить достаточную информацию, чтобы устранить проблему.

В левом нижнем углу на рисунке показана кнопка Advanced. Диалоговое окно Service Reference Settings, которое открывается после щелчка на этой кнопке, позволяет вам указать, какие типы считаются частью ссылки на службу. По умолчанию считается, что все локальные системные типы соответствуют типам, опубликованным службой. Если это условие не выполняется, то уточните значения в области Data Туре, которая является частью этого диалогового окна. В левом нижнем углу диалогового окна Service Reference Settings расположена кнопка Add Web Reference, позволяющая добавлять в решение более привычные веб-ссылки. Это может оказаться важным, если вы ограничены в ресурсах или пытаетесь поддерживать работу в нескольких системах.