habrahabr

CLion — долгожданная IDE от JetBrains для С/С++ разработчиков открывает публичный EAP

  • вторник, 9 сентября 2014 г. в 03:11:11
http://habrahabr.ru/company/JetBrains/blog/236061/

Последнее время ни один пост от нашей компании не обходился без традиционного вопроса от читателей «А когда же выйдет ваша кросс-платформенная C/C++ IDE?». И вот сегодня наконец мы готовы сказать: Public Early Access Program началась!



Если коротко: тут — скачать, здесь — почитать ознакомительную инструкцию, а под катом — подробности.

С самого основания компании JetBrains стремится облегчить жизнь разработчикам программного обеспечения. Мы создаем интеллектуальные программные решения, избавляющие человека от рутины. Мы начали с простого инструмента для рефакторинга Java кода, а сегодня в нашем арсенале — интегрированные среды разработки для многих популярных языков и платформ: Java, .NET, Python, Ruby & Ruby on Rails, PHP, JavaScript, HTML, Objective-C и др. Так как мы любим и считаем правильным использовать то, что сами же создаем, то у нас появились и инструменты для совместной работы (сервер непрерывной интеграции — TeamCity, баг-трекер и система управления проектами по методикам Agile — YouTrack) и даже IDE для разработчиков и админов СУБД и инструмент для просмотра репозиториев и ревью кода.

Языки С и С++ — старожилы мира программирования. Мы и их не обходили стороной. В IDE для iOS/OS X разработчиков — AppCode — поддержка этих языков была уже с самых ранних версий. Но мы решили пойти дальше. За прошедший год мы анонсировали поддержку С/С++ еще в двух продуктах: в ReSharper и в новой кросс-платформенной интегрированной среде разработки. О ней то и пойдет речь.

Поддерживает CMake


CLion (так мы назвали нашу новую IDE) сейчас работает с проектами на основе системы сборки CMake, одной из самых популярных в среде C/C++ разработчиков. Так что если у вас уже есть проект на основе CMake, то вам достаточно открыть основной файл проекта CMakeLists.txt в IDE. Всю информацию о файлах, входящих в проект, настройках и параметрах, CLion возьмет именно оттуда. Если же проекта еще нет — встроенный визард поможет создать простейший проект и создаст файл CMakeLists.txt, добавив туда самое необходимое.

Все изменения в файлах CMake наша IDE подхватывает автоматически, но вы можете и сами дать команду Reload CMake Project. Отдельно вызывать команду cmake при сборке проекта тоже не надо — CLion сделает это за вас. А вот если захотите вызвать до или после сборки какие-то дополнительные скрипты, то потребуется настроить специальный внешний инструмент (External Tool) и указать фазу, когда его следует запустить.

Инструментальное окно CMake покажет вам ошибки, полученные при выполнении команды cmake, а также даст возможность отредактировать переменные CMake Cache:

cmake_cache_b

Кросс-платформенная и многофункциональная


Главное отличие CLion от AppCode и ReSharper C++ — кросс-платформенность. Не важно, на чем вы работаете (Linux, Windows или OS X) — CLion запустится на любой из этих платформ. Набор инструментов, необходимых для работы с IDE, можно найти в нашей ознакомительной инструкции.

CLion — это многофункциональная IDE. В ней вы можете не только писать на C и C++ (кстати, стандарт С++11 CLion поддерживает практически полностью, о С++14 мы активно думаем и планируем), но и заниматься веб-разработкой на HTML(5), CSS, JavaScript, XML. Некоторые другие языки доступны в виде плагинов (например, Lua).

IDE интегрирована с многими популярными системами контроля версий (Git (в том числе GitHub), SVN, Perforce, Mercurial, TFS, CVS) и треккерами задач (Jira, YouTrack, Mantis, Gitlab и др.). В дальнейших версиях мы планируем добавлять поддержку фреймворков для юнит-тестирования.

Помним о самом главном


CLion сейчас поддерживает два компилятора: GCC и Clang. Под Windows предполагается использование инструментария Cygwin или MinGW (eсли вы — пользователь Visual Studio и Visual C++ Compiler, то вам стоит обратить внимание на другой наш продукт — ReSharper для C++).

Для отладки приложения предполагается использовать GDB 7.8. Встроенный отладчик позволит пройти программу по шагам, остановившись на точках остановки, посмотреть значения переменных и даже изменить их на ходу:

debugger_b

Интеллектуальная


IDE основана на платформе IntelliJ и, конечно, уже включает многие интеллектуальные фичи, свойственные нашим продуктам:
  • подсветка синтаксиса,
  • автодополнения (включая «умные» дополнения, которые учитывают типы выражения, Ctrl+Shift+Space, если кто забыл):
    debugger_b
  • эффективные механизмы навигации (включая Navigate to Class/File/Symbol, Navigate to Declaration/Definition/Super Definition)
  • многочисленные механизмы поиска (от Find Usages с разнообразными вариантами группировки результата до «поиска везде»),
  • анализ кода на потенциальные ошибки и проблемные места и механизм быстрых правок, позволяющий находить более 30 видов проблем в одном только коде на С/С++:
    inspection_b
  • разнообразные рефакторинги кода:
    • переименование (включая использования в файлах CMakeLists.txt):
      rename_b
    • вынесение части кода в отдельную функцию, макрос,
    • введение новой переменной, константы, параметра, определения типа (typedef),
    • изменения сигнатуры функции:
      change_signature_b
    • безопасное удаление переменной, функции, и тд.,
    • inline,
    • перенос членов класса вверх/вниз по иерархии.

  • возможности генерации кода для конструкторов/деструкторов классов, методов getter/setter для членов полей класса, override/implement, surround with-конструкций:
    surround_with_1_b


Чтобы получить лучшее представление о CLion, предлагаем посмотреть демо:

Мы надеемся через несколько месяцев выпустить официальный первый релиз. Так что главной задачей сейчас будет улучшение текущей функциональности, продолжение поддержки CMake и, возможно, добавление поддержки LLDB и Google Test. А вот пост-релизные планы, на самом деле, зависят от вас, наших пользователей. Добавляйте ваши запросы в наш треккер и голосуйте за уже имеющиеся.

Заинтересованы? Качайте Public EAP, пробуйте, оставляйте отзывы и задавайте вопросы на форуме, в твиттере, в треккере или нашем блоге. Все ваши впечатления и комментарии очень важны для нас, так как мы хотим, чтобы разработка на C и C++ в среде CLion приносила вам удовольствие и была продуктивна!

Программируйте с удовольствием!
Ваша команда JetBrains CLion