Последнее время ни один пост от нашей компании не обходился без традиционного вопроса от читателей, «А когда же выйдет ваша кросс-платформенная 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:
Кросс-платформенная и многофункциональная
Главное отличие 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. Встроенный отладчик позволит пройти программу по шагам, остановившись на точках остановки, посмотреть значения переменных и даже изменить их на ходу:
Интеллектуальная
IDE основана на платформе IntelliJ и, конечно, уже включает многие интеллектуальные фичи, свойственные нашим продуктам:
- подсветка синтаксиса;
- автодополнения (включая «умные» дополнения, которые учитывают типы выражения,
Ctrl+Shift+Space
, если кто забыл):
- эффективные механизмы навигации (включая Navigate to Class/File/Symbol, Navigate to Declaration/Definition/Super Definition);
- многочисленные механизмы поиска (от Find Usages с разнообразными вариантами группировки результата до «поиска везде»);
- анализ кода на потенциальные ошибки и проблемные места и механизм быстрых правок, позволяющий находить более 30 видов проблем в одном только коде на С/С++:
- разнообразные рефакторинги кода:
- переименование (включая использования в файлах CMakeLists.txt):
- вынесение части кода в отдельную функцию, макрос;
- введение новой переменной, константы, параметра, определения типа (typedef);
- изменения сигнатуры функции:
- безопасное удаление переменной, функции, и т. д.;
- inline,;
- перенос членов класса вверх/вниз по иерархии;
- возможности генерации кода для конструкторов/деструкторов классов, методов getter/setter для членов полей класса, override/implement, surround with-конструкций:
Чтобы получить лучшее представление о CLion, предлагаем посмотреть демо:
Что в планах?
Мы надеемся через несколько месяцев выпустить официальный первый релиз. Так что главной задачей сейчас будет улучшение текущей функциональности, продолжение поддержки CMake и, возможно, добавление поддержки LLDB и Google Test. А вот пост-релизные планы, на самом деле, зависят от вас — наших пользователей. Добавляйте ваши запросы в наш трекер и голосуйте за уже имеющиеся.
Заинтересованы? Качайте Public EAP, пробуйте, оставляйте отзывы и задавайте вопросы на форуме, в твиттере, трекере или нашем блоге. Все ваши впечатления и комментарии очень важны для нас, ведь мы хотим, чтобы разработка на C и C++ в среде CLion приносила вам удовольствие и была продуктивна!
Программируйте с удовольствием!
Ваша команда JetBrains CLion - переименование (включая использования в файлах CMakeLists.txt):
Автор: anastasiak2512