Какая лучшая С++ IDE для * nix envirnoment? Я слышал, что C/С++ модуль Eclipse является достойным, а также Notepad ++, но помимо этих двух я понятия не имею. Любые мысли или комментарии?
Лучшая С++ IDE для * nix
Ответ 1
В Ubuntu некоторые IDE, доступные в репозиториях, следующие:
Существует также:
- Eclipse (рекомендуется не устанавливать из репозиториев из-за проблем с разрешениями файлов и папок)
- Code:: blocks
И, конечно же, все любимые текстовые редакторы:
- VI/ВИМ
- Emacs
Это правда, что vim и emacs - очень мощные инструменты, но кривая обучения очень крутая.
Мне действительно не нравится Eclipse, я нахожу его багги и немного слишком неуклюжим.
Я начал использовать Geany как bare-bones, но функциональную и полезную среду IDE. Он имеет базовую функцию завершения кода и является хорошим, чистым интерфейсом [Gnome].
Anjutastrong > Я пробовал в течение дня, мне это совсем не понравилось. Я не нашел его полезным, как Geany.
Kdevelop и code:: blocks получают кучу хороших отзывов, но я их не пробовал. Я использую gnome, и я еще не вижу приложение KDE, которое хорошо выглядит в gnome (извините, я уверен, что это отличная программа).
Если только Linux-версия была выпущена dev-С++. Это фантастическая (но только оконная) программа. Вы всегда можете запустить его под Wine;)
В какой-то степени это сводится к личным предпочтениям. Мой совет - исследовать Kdevelop, Geany и code:: blocks в качестве отправной точки.
Ответ 2
Как программист, который много лет пишет код под Linux, я просто не могу отказаться от использования Vim для написания кода.
Как только вы узнаете об этом и узнаете некоторые из его более продвинутых функций (Code Folding, как использовать ctags, как эффективно работать с несколькими буферами и т.д.), переместить в другой редактор очень сложно - поскольку все остальное, кажется, отсутствует функции, к которым вы привыкли.
Единственным другим редактором с надмножеством функций vim является emacs. Я настоятельно рекомендую изучать то или другое - и если у вас есть вопросы, не стесняйтесь спрашивать здесь или в #emacs или #vim на irc.freenode.net - там очень большое и полезное сообщество, которое поможет вам узнать, какие расширения или команды лучше всего подходят для проблем с программным обеспечением, с которыми вы сталкиваетесь.
[Изменить: комментарий отметил, что "vim не является IDE", я согласен. Мне не нравится прозвище IDE, потому что это означает gui с менеджером проекта и связкой выпадающих ящиков. Мне нравится использовать терминологию " Хорошие инструменты". См. статьи Теда Леунга по этому вопросу]
Ответ 3
Я удивлен, что никто не упомянул Qt Creator, поскольку он доступен в большинстве репозиториев, довольно небольшой по размеру и тем не менее делает большинство вещей, которые мне нужны очень хорошо.
Ответ 4
Я бы порекомендовал CodeBlocks.
Основные характеристики:
- Открытый исходный код! GPLv3, без скрытых затрат.
- Кросс-платформенный. Работает на Linux, Mac, Windows (использует wxWidgets).
- Написан на языке С++. Не требуется интерпретированных языков или собственных библиотек.
- Расширяемые через плагины
Компилятор:
- Поддержка нескольких компиляторов:
- GCC (MingW/GNU GCC)
- MSVС++
- Цифровой Марс
- Borland С++ 5.5
- Open Watcom
- ... и многое другое
Ответ 5
Я просто использую Emacs.
Ответ 6
Emacs - это фантастическая, отличная от всех, но доступная для всех, IDE. См. Другой связанный с этим вопрос: Использование Emacs в качестве среды IDE
Ответ 7
Мое голосование - KDevelop (хотелось бы, чтобы у меня было больше очков, чтобы я мог "проголосовать", поэтому я мог просто согласиться с другими косвенно, чем комментарий).
Я использую Eclipse уже пару лет для личного использования, убедившись, что "с тех пор, как IBM пожертвовала, это должно быть хорошо", но затем я обнаружил KDevelop и никогда не возвращался. Потому что я довольно испорчен Microsoft Visual Studio для профессионального использования, поэтому KDevelop чувствовал себя наиболее комфортно для меня.
Я хочу наслаждаться программированием как хобби, а не тратить время на поиск того, что делает ctrl - k - k и ctrl - k - b. Как отмечали другие, все, что "считает правильным" для них, является лучшей IDE. Для меня KDevelop чувствует себя наиболее комфортно, потому что я могу сосредоточиться на кодировании (я, вероятно, мог бы переназначить ключи в другую среду IDE, чтобы заставить его чувствовать себя VS, но, как уже упоминалось, я скорее инвестирую свое кодирование во времени, что более интересно).
Ответ 8
Я использую плагин NetBeans С++, и он превосходный. Я пришел из фона Visual Studio, и управление проектами Netbeans очень похоже. Я попробовал KDevelop, но обнаружил, что он немного flaky (это было 12 месяцев назад, так что, вероятно, сейчас это лучше).
Я также боролся с зависимостями, используя KDevelop - то есть там, где для программы требуется сборка libs, но Netbeans сделал это простым.
Единственная жалоба заключается в том, что, будучи Java-приложением, это не особенно быстро - очень заметно при работе под VMWare.
Ответ 9
Проще говоря, Netbeans. Вы должны попробовать. Это так хорошо. Это намного лучше, чем Eclipse с плагином CDT.
Ответ 10
KDevelop приятно, особенно если вы запустите KDE. Он поддерживает множество языков в качестве дополнительного бонуса. Я нашел, что его встроенный терминал действительно полезен.
Ответ 11
Netbeans получил неплохие отзывы для поддержки С++: http://www.netbeans.org/features/cpp/
Я никогда не использовал Netbeans или Eclipse для разработки на С++, но стоит посмотреть.
Ответ 12
Если вы работаете из Windows и Visual Studio, вы можете обнаружить, что Code:: Blocks соответствует вашим ожиданиям.
Это был мой опыт; Сначала я попробовал несколько других, но все они ожидали, что я сделаю длинный учебник, прежде чем я смогу начать делать что-нибудь интересное - и с помощью дюжины IDE, которые могут занять несколько дней.
С Code:: Blocks не было обручей, чтобы проскочить, и очень мало обязательного крейта, чтобы учиться, прежде чем я смог бы быть продуктивным. Я по-прежнему предпочитаю Visual Studio, но Code:: Blocks может открывать мои проекты Visual Studio, и, похоже, я не хочу, чтобы я тратил впустую в любое время, так что это самая первая для меня IDE ID.
Ответ 13
Я был пользователем VisualStudio + VA-X перед тем, как переключиться на ubuntu, и вам нужны хорошие функции автоматического завершения и функции навигации в любой среде IDE.
Я попробовал Netbeans, Eclipse CDT, CodeBlocks, Geany, Anjuta, KDevelop и, наконец, остановился на KDevelop, так как это было самым близким к VS + VA-X.
Eclipse и NetBeans являются слишком тяжелыми и вялыми для моего вкуса. Большинство других IDE имеют багги/неполное/немое автоматическое завершение и другие функции; или они хотят взять под свой контроль свой код и должны быть импортированы в проекты; или они помещают 101 файл в вашу исходную папку. Только KDevelop разрешил мне иметь простую ссылку на мою папку src и позволить мне работать. автоматическое завершение не блестящее, но лучше, чем другие.
KDevelop не хорошо сочетается с моим Gnome, но я могу жить с ним;)
Ответ 14
Мне очень нравится CodeLite. Проверьте страницу функций.
Ответ 15
Лично я согласен с толпой kDevelop. Eclipse почувствовал себя немного громоздким и слегка неустойчивым. Что-то о kDeveloper просто всегда кажется правильным.
Ответ 16
Ultimate ++ [http://www.ultimatepp.org/index.html]
[править]
У него есть собственные библиотеки классов С++ (как указывает Хернан), но ничто не мешает вам использовать какие-либо другие классы libs, такие как SDL, или вы можете катиться самостоятельно. Вы можете даже использовать boost, если хотите, но я должен сказать, что некоторые из предлагаемых классов и методов будут более полезными.
То, что я ценю больше всего, это блестящая интеграция с отладчиком и очень полный контекст - чувствительный редактор. Он использует стандартный компилятор и отладчик (gcc, g++, gdb) для Linux и компилятор/отладчик MS на этой платформе. Единственная (очень маленькая) проблема, с которой я столкнулся, - это домашние имена для проекты (называемые Гнездо и т.д.). Это не нужно и даже может быть отложено серьезным разработчикам, но это только имена, и я считаю, что могу легко игнорировать его.
Ответ 17
Я задал этот вопрос раньше, чтобы испытать пользователей Linux, и они всегда говорят Vim и automake. Я использую Vim в качестве моего редактора по умолчанию в Linux, и через некоторое время он становится интуитивным. Я узнал об этом, работая с некоторыми небольшими примерами, изучая С++, чтобы одновременно изучить оба.
Ответ 18
На моей старой работе мы использовали SlickEdit для разработки на С++ под Debian. Это кросс-платформенный и довольно мощный.
Это не бесплатно.
Ответ 19
Проблема с большинством IDE заключается в том, что они хотят иметь определенную степень контроля над организацией проекта, и это может быть проблемой, если вам нужно работать над этим проектом с другими людьми. По моему опыту это приводит к двум ряду связанных проблем:
-
Если вы запустите проект в определенной среде IDE, они составят для вас определенную структуру каталогов, организацию файлов, соглашение об именах файлов, систему сборки и т.д. Конечно, большинство этих параметров настраиваются, но это не всегда можно придерживаться конкретных конвенций, которые вам могут потребоваться. Проекты со сложной системой сборки могут быть трудно реализованы в среде IDE. Более того, проект может быть непригоден для внешних, независимых изменений; например, если вы планируете писать приложение с открытым исходным кодом, не делайте зависимость IDE от проекта.
-
Если вы импортируете проект, запущенный в другом месте, скорее всего, будет нелегко использовать все функции, предоставляемые IDE. Вам нужно будет выяснить, как подключить систему сборки, отладчик (поскольку двоичные файлы могут не быть ожидаемыми) и т.д. Это особенно справедливо для больших и сложных проектов.
Причина, по которой эти проблемы не являются проблемой в Windows, заключается в том, что Visual Studio является де-факто стандартом. В рамках * nix существует тенденция не налагать конкретные инструменты/редакторы при совместной разработке проекта, и именно поэтому возникают проблемы с "перекрестной IDE-связью".
Как последнее замечание, если вы узнаете, скажем, kdevelop или netbeans, у вас могут возникнуть проблемы, если в один прекрасный день вам придется работать на машине, где их установка является проблематичной (например, у вас может не быть доступной Java-среды, и вы можете не разрешается устанавливать его). Если вы изучаете (скажем) плагины Vim +, вы намного безопаснее: вы можете сохранить свою конфигурацию как .zip файл на своем веб-сервере и быть уверенным, что Vim всегда будет доступен везде.
Ответ 20
Я действительно не могу поручиться за модуль Eclipse, но это может быть связано с тем, что я нахожусь в Windows и почти не знаю, что я делаю.
Нельзя ошибиться с вашим любимым текстовым редактором.
Ответ 21
Eclipse неплохо, но вы должны делать вещи Eclipse. В Eclipse есть несколько встроенных идей в макет каталога. Для нового проекта Eclipse является разумным выбором. Импорт существующего проекта в Eclipse может потребовать некоторой реструктуризации.
Я использовал Eclipse под QNX для С++. Люди QNX действительно разработали возможности С++, поэтому QNX будет иметь IDE.
Ответ 22
Emacs работает для простых вещей, но я использую Eclipse для любого более крупного проекта.