html текст
All interests
  • All interests
  • Design
  • Food
  • Gadgets
  • Humor
  • News
  • Photo
  • Travel
  • Video
Click to see the next recommended page
Like it
Don't like
Add to Favorites

Поддержка С++ в ReSharper

Как вы наверное знаете, мы уже достаточно давно работаем над 8й версией ReSharper — в процессе разработки мы улучшили навигацию, расширили поддержку XAML, добавили свой собственный механизм просмотра зависимостей между проектами, и добавили еще много нового и интересного функционала.

Но сейчас я хочу рассказать про нечто за гранью наших планов по 8-ке: уже несколько месяцев часть нашей команды работает над чем-то абсолютно новым, чего уже годы просили наши пользователи — поддержкой в ReSharper языка программирования C++.



Эта инициатива является частью нашего плана сделать С++ одним из языков, который был бы полностью поддержан в наших продуктах — как в ReSharper так и в отдельной кросс-платформенной среде разработки которую мы анонсировали ранее в этом году.

С++ является очень мощным языком, который за все эти годы никуда не делся, несмотря на появление и рост популярности его «языков-наследников» C# или Java: сегодня очень много кода пишется именно на этом языке, и пользоваться им будут еще очень долго. Мы в JetBrains верим, что наш инструментарий может помочь разработчикам на С++ разрабатывать быстрее и эффективнее.

Набор возможностей


Парсить язык вроде С++ нелегко, особенно если учесть весь тот препроцессинг и обработку шаблонов, которая является особенно трудоемкой в больших проектах. Нашей основной целью как раз является корректность обработки всех возможных нюансов, и большое количество усилий ушло как раз на то чтобы «понять» С++ вне зависимости от специфичных возможностей, которые используются в языке. На текущий момент у нас не так много видимого функционала, но проделано очень много фундаментальной работы. Сегодня, те внутренние билды которые готовятся у нас включают в себя следующий функционал:

  • Поддержка подсветки синтаксиса
  • Полный набор механизмов поддержки навигации включая такие механизмы как Go to Type, Go to Symbol, Go to File Member и конечно новый Go to Everything, специфичный для ReSharper 8.
  • Поддержка контекстной навигации, в т.ч. навигацию к декларации (Go to Declaration), унаследованным символам (Derived Symbols), базовым символам (Base Symbols) — иначе говоря, поддержка всех основных возможностей которые можно ожидать при открытии меню Navigate To:


  • Также у нас есть механизм поиска использования элемента (Find Usages) с предпросмотром, фильтрами поиска, различными возможностями группировки, и всем тем что обычно появиялется в окошке Find Usages.
  • Боковые маркеры (gutter marks) в новом индикаторе возможных действий в ReSharper 8 помогают отслеживать связи между неследуемыми элементами и осуществлять переходы между ними:


  • Рефакторинг по введению новой переменной (Introduce Variable):

  • Контекстные действия для подстановки макросов, как отдельных так и вложенных (т.е. полностью выполненных):


  • Понимание шаблонов дает ReSharper возможность правильно вычислить и дать возможность переходить к конкретным специализациям того или иного шаблона:



Чтобы дать вам представление того, чего можно ожидать от текущей поддержки С++ в ReSharper, предлагаю посмотреть вот этот скринкаст:


Как все это попробовать?


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

  • Перейдите на страницу поддержки С++ на нашем сайте.
  • Заполните форму с описанием тех расширений С++, библиотек и версий языка которые вы используете. Мы просим прощения за такой большой «опросник», но поверьте — эта информация очень важна для нас чтобы понимать, над чем стоит работать в первую очередь.
  • Отправьте нам запрос на подписку к приватным сборкам ReSharper со встроенной поддержкой С++. Как только у нас будет приватная сборка которая сможет функционировать с вашими настройками среды, мы пришлем вам e-mail со ссылкой для скачивания.

Что следующее?


  • Предже всего, хочется в очередной раз подчеркнуть что поддержка С++ не будет включена в ReSharper 8 потому что она еще «сыровата» для полноценного продакшн-релиза.
  • В ближайшие несколько месяцев, наша команда будет работать над поддержкой С++ чтобы представить публичный EAP осенью этого года. По мере того как мы будем добавлять поддержку новых версий языка, платформно-специфичных расширений, а также поддержку новых версий Visual Studio, мы будем рассылать приватные билды тем, кто на них подписался.
  • На текущий момент, у нас уже практически готова поддержка C/C++03 для маленьких и средних по размеру проектов которые или не используют сторонние библиотеки вообще, или используют небольшие. Текущий план разработки на следующие несколько месяцев выглядит примерно вот так:
    • Поддержка небольших и средних по размеру проектов которые используют более крупные библиотеки, например Boost
    • Поддержка С++11
    • Гарантия адекватной работы в крупными проектами
    • Поддержка специфичных для Visual Studio расширений, а также поддержка MFC/ATL/WTL


  • Как только у нас будет все готово для публичного релиза, мы откроем программу раннего доступа (ЕАР) и, после публичного тестирования, добавим поддержку С++ в основной билд ReSharper так, что поддержка С++ станет частью ReSharper Full Edition.

Ну как, интересно? Может быть вы уже давно ждали этой новости? Тогда подпишитесь на приватные сборки и, работая с ними, помогите нам сделать поддержку С++ частью ReSharper как можно быстрее. Ну и не стесняйтесь рассказывать нам о том, что конкретно вы хотели бы видеть в плане поддержки С++ в комментариях к этому посту. Спасибо!
Читать дальше
Twitter
Одноклассники
Мой Мир

материал с habrahabr.ru

3

      Add

      You can create thematic collections and keep, for instance, all recipes in one place so you will never lose them.

      No images found
      Previous Next 0 / 0
      500
      • Advertisement
      • Animals
      • Architecture
      • Art
      • Auto
      • Aviation
      • Books
      • Cartoons
      • Celebrities
      • Children
      • Culture
      • Design
      • Economics
      • Education
      • Entertainment
      • Fashion
      • Fitness
      • Food
      • Gadgets
      • Games
      • Health
      • History
      • Hobby
      • Humor
      • Interior
      • Moto
      • Movies
      • Music
      • Nature
      • News
      • Photo
      • Pictures
      • Politics
      • Psychology
      • Science
      • Society
      • Sport
      • Technology
      • Travel
      • Video
      • Weapons
      • Web
      • Work
        Submit
        Valid formats are JPG, PNG, GIF.
        Not more than 5 Мb, please.
        30
        surfingbird.ru/site/
        RSS format guidelines
        500
        • Advertisement
        • Animals
        • Architecture
        • Art
        • Auto
        • Aviation
        • Books
        • Cartoons
        • Celebrities
        • Children
        • Culture
        • Design
        • Economics
        • Education
        • Entertainment
        • Fashion
        • Fitness
        • Food
        • Gadgets
        • Games
        • Health
        • History
        • Hobby
        • Humor
        • Interior
        • Moto
        • Movies
        • Music
        • Nature
        • News
        • Photo
        • Pictures
        • Politics
        • Psychology
        • Science
        • Society
        • Sport
        • Technology
        • Travel
        • Video
        • Weapons
        • Web
        • Work

          Submit

          Thank you! Wait for moderation.

          Тебе это не нравится?

          You can block the domain, tag, user or channel, and we'll stop recommend it to you. You can always unblock them in your settings.

          • habrahabr.ru
          • домен habrahabr.ru

          Get a link

          Спасибо, твоя жалоба принята.

          Log on to Surfingbird

          Recover
          Sign up

          or

          Welcome to Surfingbird.com!

          You'll find thousands of interesting pages, photos, and videos inside.
          Join!

          • Personal
            recommendations

          • Stash
            interesting and useful stuff

          • Anywhere,
            anytime

          Do we already know you? Login or restore the password.

          Close

          Add to collection

             

            Facebook

            Ваш профиль на рассмотрении, обновите страницу через несколько секунд

            Facebook

            К сожалению, вы не попадаете под условия акции