Я попытался выполнить поиск, но если это дубликат, он скрыт от шума. Альтернативное название вопроса:Что такое VS 2008 IDE Написана?
Какие навыки необходимо искать при необходимости интеграции с IDE Visual Studio?
Я попытался выполнить поиск, но если это дубликат, он скрыт от шума. Альтернативное название вопроса:Что такое VS 2008 IDE Написана?
Какие навыки необходимо искать при необходимости интеграции с IDE Visual Studio?
Visual Studio 2008 написан как в собственном, так и в управляемом коде, хотя основная часть написана на C++. Существует несколько частей Visual Studio, которые всегда были написаны в управляемом коде (например, в браузере свойств, в WinForms Designer). И, конечно же, Visual Studio 2008 сшивается вместе с COM.
В Visual Studio 2010 есть попытка переместить больше IDE в управляемый код. Текстовый редактор и оболочка (т. Е. Меню, панели инструментов, рамки документов и инструментальных окон и т. Д.) Записаны на C#. Кроме того, фрагменты C# и VB IDE записываются в C# и VB соответственно. Новый язык, F #, полностью написан в управляемом коде - компилятор, служба языка, система проекта и т. Д. - все записаны в F #.
Вы можете использовать C#, VB или C++ для интеграции с Visual Studio 2008. Тем не менее, учитывая, что Visual Studio построена на COM, полезно понимать COM/ATL. Кроме того, если вы решите использовать управляемый язык, известная команда COM-взаимодействия и отладки смешанного режима будет чрезвычайно полезна. Обратите внимание, что существует несколько уровней интеграции VS:
Следует отметить, что они становятся все более сложными для автора и развертывания.
В Visual Studio 2010 новая форма расширяемости внедряется в нескольких областях IDE, но в основном для расширения нового текстового редактора WPF. В будущем интеграция с Visual Studio потребует компонентов MEF (Managed Extensibility Framework), а не COM. Таким образом, в VS 2010 расширение текстового редактора просто потребует создания MEF-компонента на вашем любимом управляемом языке.
Смесь. Ядром является C++/COM-материал, но многие из новых вещей - это управляемый код (C# и т. Д.). Из-за того, что ядром является C++/COM (с кучей кода «заимствовано» из MS Office), интеграция VS - забавный опыт.
В эпизоде № 48 подкаста, содержащем интервью с Дастином Кэмпбеллом, менеджером программ в группе управляемых языков Visual Studio.
В этом интервью он несколько минут говорит об этой точной проблеме и подробно рассказывает о том, почему изменения в 2010 году не согласуются с 2008 годом и как выглядит будущее.
Если это вопрос строгого любопытства, то другие ответы верны. Но если вы захотите копать немного глубже, слушание подкаста будет стоить вашего времени.
Мне интересно, какой навык нужно искать, когда для работы требуются компоненты интеграции Visual Studio. – ojblass
@ojblass - если вы имеете в виду языковые навыки, C++ и C# - хорошее место для начала. Наличие возможности быстро выбирать другие языки - плюс. –
@ojblass, чтобы добавить к комментарию Дастина - навыки C# или C++ хороши, но также понимание различий между COM и .net, отладкой CLR сильно задействованы, если вы хотите сделать серьезную интеграцию VS. Чтобы сократить кривую обучения, я бы поискал того, кто [успешно] разработал что-то, что интегрируется с VS IDE (любая версия - интерфейсы одинаковы для 2002/2003/2005/2008) с некоторыми незначительными дополнениями в каждой новой версии , – KristoferA
По крайней мере, следующие языки используются внутри Visual Studio 2008
Возможно, несколько других, о которых я забыл.
Мне любопытно, номер 4 выше ... какая его часть? – ojblass
@ojblass, # 4 больше личного мнения. Если вы не используете классы, деструкторы, шаблоны и управляемую память с malloc и бесплатно, я называю это C, даже если он скомпилирован с помощью компилятора C++. – JaredPar
Я склонен согласиться с тем, что C++ подразумевает, что не-OO может задерживаться. Я думаю, что ваш ответ правильный, но ответ выше всех моих проблем. +! ура – ojblass
Вы имеете в виду создание дополнений? Именно поэтому я задаю вопрос. – ojblass
@ojblass - интеграция VS может быть создана в управляемом коде. –
@ojblass - Add-ins/addons/VSIP и т. Д. Использует COM-интерфейсы, но вы обычно записываете их в управляемый код. Две головные боли, с которыми вы столкнетесь, - это: а) как VS (например, обмен и т. Д.) Загружает сборки .net по-другому, чем 100% -установленные кодовые приложения, и б) COM-литье и очистка COM-файлов обычно не требуется в 100% код-приложение. О, и испорченные/несогласованные интерфейсы, связанные с интеграцией VS. :) – KristoferA