LINUX.ORG.RU
ФорумTalks

JetBrains о состоянии экосистемы C++

 ,


0

3

с комментариями от Andreas Kling, Creator of SerenityOS и Matt Godbold, Creator of Compiler Explorer

https://www.jetbrains.com/lp/devecosystem-2021/cpp/

Некоторые результаты опросов:

gcc самый популярный компилятор С++.

cppcheck используется в ~6 раз чаще чем PVS-Studio.

vcpkg используется в ~2 раза чаще чем Conan.

★★★★★

Это значит что их продукты игнорируют «не отправлять анонимную статистику»?

dnb ★★★★
()

vcpkg используется в ~2 раза чаще чем Conan.

Приятно, интересно когда Qt откажется от Conan.

MOPKOBKA ★★★★
()

Which IDE / editor do you use the most for C++ development?

Visual Studio Code — 28%

Вау, это вскод популярнее их ИДЕ для плюсов.

fernandos ★★★
()

Вобщем-то цифры ожидаемые, сюрпризов нет. Разве что VS Code, оказывается, завоевывает мир. Примечательно, что половина опрошенных со своим кодом на 11 не собирается переходить на более современные стандарты. Это к вопросу о том, что якобы C++ разрабы с каждым новым стандартом переучиваются на новый C++. Нет, не переучиваются. Легаси работает, и кушать не просит.

seiken ★★★★★
()
Ответ на: комментарий от seiken

Ну как минимум в C++17 есть вполне себе удобный filesystem, обобщенные лямбды, структурные привязки, автоматическое выведение шаблонных параметров шаблонов классов, optional. С этим стандартом некоторое моменты стали проще.

rumgot ★★★★★
()
Ответ на: комментарий от rumgot

Тут же вопрос не в том, что оно стало проще (да, стало проще), а "будете ли вы ваш проект переводить со стандарта X на более новый стандарт Y.

seiken ★★★★★
()

Мы на работе как-то часто смотрели код проектов через PVS-Studio. В целом у более опытных (2-3+ года опыта) разрабов в основном ничего не находило. У менее опытных (0-1 года опыта) были найдены всякие банальные косяки.

rumgot ★★★★★
()
Ответ на: комментарий от seiken

В целом ведь не нужно прям сразу все переписывать. Просто в какой-то момент решели и перешли на более новый компилятор и изменили в CMakeLists.txt параметры более нового C++ стандарта. И все. Просто уже новые части будут написаны с использованием новейшего стандарта, а старые будут работать.

rumgot ★★★★★
()
Ответ на: комментарий от seiken

Не понимаю этого vscode. Ставил недавно - какой-то notepad++ на минималках. Ничего не понятно, проектов не нашёл, поддержку gradle не нашёл. Создал какой-то рандомный Java-файл, начал писать код. Он ошибки не видит, пиши что хочешь. Какое-то дежавю из 2000-х. Кто им пользуется, хз. Хайпа немеряно.

Legioner ★★★★★
()
Последнее исправление: Legioner (всего исправлений: 1)
Ответ на: комментарий от Legioner

Да, я как-то давно пробовал, создалось ощущение какой-то глючной вебстранички с жутко неинтуитивным интерфейсом, не очень отзывчивым, и то ли JSON то ли JAML (уже не помню) конфигами на каждый чих. Или может я с Atom перепутал… Хотя они оба с одинаковым концептом.

seiken ★★★★★
()
Последнее исправление: seiken (всего исправлений: 1)

Я бы еще добавил опенсорсный SourceTrail, для анализа структуры исходного текста и удобной навигации по исходникам.

https://www.sourcetrail.com/

linuxoidspb
()
Последнее исправление: linuxoidspb (всего исправлений: 1)
Ответ на: комментарий от fernandos

Не удивительно. Их ide для плюсов работает только на hello-world-проектах. На чем-то более-менее серьезном она умирает.

Reset ★★★★★
()
Ответ на: комментарий от Legioner

Не понимаю этого vscode. Ставил недавно - какой-то notepad++ на минималках. Ничего не понятно, проектов не нашёл, поддержку gradle не нашёл. Создал какой-то рандомный Java-файл, начал писать код. Он ошибки не видит, пиши что хочешь. Какое-то дежавю из 2000-х. Кто им пользуется, хз. Хайпа немеряно.

Я был такого же мнения, пока не решил потыкать посмотреть. На удивление vscode оказался весьма неплох для связки C++/cmake. Навигация по исходникам, автодополнение кода, сборка в различных конфигурациях, разными тулчейнами, даже отладка с pretty printer’ами работает. При открытии одного и того же проекта, CLion выжрал 5 ГБ, а vscode только 1.5 ГБ. По сравнению с CLion конечно есть некоторые недочеты, но на минутку, это просто расширяемый текстовый редактор, а не IDE. Если в IDE все работает из коробки, то в vscode придется сначала повозиться с напильником в части настройки и установки нужных расширений.

m0rph ★★★★★
()
Ответ на: комментарий от fernandos

Поддержка C++ там сносная (хуже чем в clion, но не тормозит), прозрачная удаленная-разработка без плясок с бубном (vscode сам себя деплоит на машину со всеми плагинами и общается с собой по ssh).

В clion удаленная разработка сделана очень криво и костыльно (не встречал еще ни одного человека который бы это осилил, все кто сидит на clion используют самописные костыли на базе rsync).

В серьезных C++ проектах без удаленной разработки нельзя, так как мощностей localhost’а обычно не хватает чтобы собрать проект за вменяемое время.

Reset ★★★★★
()
Ответ на: комментарий от Reset

В clion удаленная разработка сделана очень криво и костыльно (не встречал еще ни одного человека который бы это осилил, все кто сидит на clion используют самописные костыли на базе rsync).

Я это осилил, в принципе работать можно, но не без проблем. Кроме того, что файлы синхронизируются не всегда (хотя часы обоих машин сихнронизированы) и приходится иногда делать это вручную, там есть еще масса забавных фактов. Например, если на удаленной машине где-то в дереве системных include файлов есть файл с именем aux.h, заголовочные файлы перестают вытягиваться и соответственно ломается навигация по коду, автодополнение и т.п.

m0rph ★★★★★
()
Последнее исправление: m0rph (всего исправлений: 2)
Ответ на: комментарий от fernandos

Ну плагины для Java я, конечно, ставил. Наверное надо научиться. Но я как-то привык, что GUI-программы достаточно очевидны в применении и не требуют какого-то особого изучения перед началом работы. Когда уже разобрался, там да, можно и изучить какие-то неочевидные тонкости, но первые шаги вроде должны быть очевидны.

Ладно, мне, как говорится, не очень-то и хотелось, как-то покрывает Idea 100% моих нужд, даже в Rust умеет.

Legioner ★★★★★
()
Последнее исправление: Legioner (всего исправлений: 1)
Ответ на: комментарий от fsb4000

Это шутка такая? Он же там всё из консоли запускает. Я с тем же успехом могу vim-ом пользоваться и в соседней вкладке консоли вбивать эти команды. Я от IDE ожидаю того, что она будет мне по минимуму:

  1. Импортировать структуру проекта из gradle, в первую очередь зависимости.

  2. Показывать правильный автокомплит и полную навигацию по коду (перейти к объявлению, показать все использования, всякие навигации по иерархиям во все стороны). Включая подключение исходников всех библиотек.

  3. Поддержка хотя бы примитивнейших рефакторингов (переименование идентификатора, выделение блока кода в метод и наоборот).

  4. Моментальная подсветка всех ошибок и предупреждений.

  5. Запуск приложения или подсоединение к запущенному приложению и отладка.

  6. Кодогенерация. Ну это опционально, 99% тут достигается примитивными сниппетами. Но в отдельных случаях бывает очень удобна генерация кода на основе синтаксиса. Я так одну библиотеку на 90% написал, тупо генерируя код (JDBC wrapper) через какой-то хитрый рефакторинг за пару часов. Без этой фичи ушло бы гораздо больше времени.

В видео он тупо сгенерировал проект через gradle init и запустил тесты через gradle test. Никакой интеграции с IDE я не увидел.

Legioner ★★★★★
()
Последнее исправление: Legioner (всего исправлений: 1)
Ответ на: комментарий от Legioner

Наверное надо научиться

Установка плагинов там исключительно проста: нажать на квадратики, найти плагин — установить.

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

Мне кажется, установка плагинов вполне очевидна.

fernandos ★★★
()
Ответ на: комментарий от Legioner

Я с тем же успехом могу vim-ом пользоваться и в соседней вкладке консоли вбивать эти команды

VSCode и есть аналог Vim/Emacs. Только на Electron.

fsb4000 ★★★★★
() автор топика
Ответ на: комментарий от rumgot

А у моего деда в сарае есть сравнительно удобные прорезиненные перчатки. Это я к чему: наличие чего-то чуть лучше чем из рук вон плохо еще не значит, что кому-то есть дело.

t184256 ★★★★★
()
Ответ на: комментарий от Reset

vscode тоже умирает, либо не может разобрать проект без ошибок. Лучше всего QtCreator справляется

SR_team ★★★★★
()

cppcheck используется в ~6 раз чаще чем PVS-Studio.

Кто бы мог подумать... бесплатный продукт популярнее платного.

RiseOfDeath ★★★★
()
26% The library source code is part of my build

Бгг, менеджеры пакетов в плюсах как были не нужны, так и не нужны :)

slackwarrior ★★★★★
()

cppcheck используется в ~6 раз чаще чем PVS-Studio.

С учётом модели распространения PVS-Studio - со всеми этими «запросить цену» или «запросить триал», странно что разница только в 6 раз. Особенно «радует» что для получения доступа к open source лицензии - надо им доказать что ты и твой проект - рожей вышел.

Сделали-бы бесплатную веб-интеграцию с гитхабом как у какого-нибудь DeepCode или Snyk - просто подключаешь публичный проект и видишь результат анализатора на их сайте, а хочешь интеграции в IDE и ещё кучу других фишек - тогда уже плати. Вот это была-бы настоящая поддержка опенсурса, да и нормальная демонстрация качества продукта.

DawnCaster ★★
()
Последнее исправление: DawnCaster (всего исправлений: 1)
Ответ на: комментарий от t184256

Что только подтверждает, что нужно неаргументированный бред писать.

rumgot ★★★★★
()

объективно, вряд-ли оспоримо

gcc основной компилятор для всех платформ. Другие - например от безисходности (под оффтоп, в существующее и быстро); или от настроения перепровериться - существенную версию собрать и покрутить

cppcheck тоже не повседневная штука, всё подобное используется кратно по мере накопления изменений…Осваивать ради такого побочные комбайны, лишняя сущность, у PVS узкий круг потреблянтов

про последнее «vcpkg используется в ~2 раза чаще чем Conan» совсем охотно верю..Conan слышу впервой, vcpkg тоже не использовал :-)

MKuznetsov ★★★★★
()
Ответ на: комментарий от hateyoufeel

Это еще один никакой текстовый редактор с плагинами, которые вечно взрыв на фабрике изменяющихся в руке молотков.

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)
Ответ на: комментарий от MKuznetsov

про последнее «vcpkg используется в ~2 раза чаще чем Conan» совсем охотно верю..Conan слышу впервой, vcpkg тоже не использовал :-)

на cppreference упоминаются аж 9 пакетных менеджеров для С++.

https://en.cppreference.com/w/cpp/links/libs

fsb4000 ★★★★★
() автор топика
Ответ на: комментарий от fernandos

тоже очень удивлён. И тому что этот кастрированный редактор обошел такую IDE как VisualStudio, дефакто являющейся стандартом в корпоративных продуктах, гемдеве...

И еще удивлен что мой любимый (и не только мой, судя по отзывам Лоровцев) QtCreator где-то там в самом низу...

Это все наводит на мысль что результаты опросов - так сказать не отражают реальность того что стоит на десктопах профиков.

А скорее всего очень залито статистикой от молодых и активных - т.е. студентов и тех кто в самом начале пути.. А они как раз очень подвержены хипстерству - хавать все самое новое, но не самое лучшее.

Имхо.

bonta ★★★★★
()
Ответ на: комментарий от fernandos

На пхпштром в пыхокомьюнити почти все молятся.

Ну да. Это ж пхпшники. Они вечно какую-то каку берут, начиная с любимого языка программирования.

hateyoufeel ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.