Я уже некоторое время занимаюсь разработкой в области Windows с помощью Visual Studio, но я также какое-то время использую Ubuntu и очень хочу заняться разработкой программного обеспечения для Linux.
Стоит также отметить. Я не ищу .NET и знаю о моно. Я также знаком с разработкой на C ++ и некоторыми Python, поэтому язык не так важен, как аспект «все в одном».
Мне было интересно узнать, есть ли полезная интегрированная среда разработки для кода / отладки / дизайна (GUI), похожая на Visual Studio, но для Linux?
У меня самого не так много опыта работы с ней (лично мне нравится работать в gedit), но для полноты мы действительно должны упомянуть Anjuta . Он является частью проекта GNOME и включает в себя многие из интересующих вас возможностей.
Сосредоточьтесь на C/C++, но расширяйте его с помощью плагинов. Некоторая поддержка Python и Vala.
Дизайнер пользовательского интерфейса Integrated Glade.
Интеграция управления версиями как минимум с Git, CVS и Subversion.
Поддержка управления проектами и автоинструментами.
Интегрированный отладчик с точками останова и т.д.... Поддержка gdb.
GTK+/GNOME Devhelp API помогает интегрировать браузер.
Плагин Valgrind для профилирования программ на утечку памяти.
Для разработки на Python также можно использовать pIDA, которая встраивает vim или emacs в Python IDE.
sudo apt-get install pida
Или WingIDE, которая является коммерческой, закрытой IDE с ограниченным исходным кодом, доступной бесплатно (а полная версия доступна для скачивания, чтобы попробовать ее в течение пары недель).
Для отладки скомпилированных языков вы также можете использовать отладочный GUI Nemiver, если используемый вами редактор/IDE не имеет достаточно хорошей отладочной поддержки
sudo apt-get install nemiver
Вам нужно указать, какой язык программирования вас интересует, так как он имеет огромное значение для ответа.
Для разработки c# в linux используйте MonoDevelop
Для разработки Java используйте eclipse
Для разработки c/c++ используйте KDevelop
Я часто использую затмение. В основном оно разрабатывалось для Java, но имеет кучу подключаемых модулей, которые расширяют его для работы с другими языками.
В зависимости от того, какие языки вы хотите изучить, есть несколько вариантов.
BASIC: Gambas
Mono/C#: MonoDevelop
C/C++: KDevelop (без графического интерфейса)
Как упоминалось в других ответах, вы можете использовать Mono. Но создание кросс-платформенных приложений с использованием Mono требует внимания, так как необходимо отфильтровать специфические для Windows библиотеки. Поэтому, перед импортом вашего проекта в Mono, проверьте совместимость используемых библиотек.
Редакция сообщества Intellij IDEA также является довольно приличным инструментом.
Mono является зрелой и успешной реализацией с открытым исходным кодом .Net framework и многих .Net языков (например, C#). Если вы знаете Visual Basic или C#, то вы можете кодировать на Ubuntu (работает даже на Windows и Mac OSX) с помощью MonoDevelop << (Нажмите на этот значок, чтобы установить MonoDevelop). Это красивая и высокофункциональная IDE, которая создает приложения, которые выглядят и чувствуются как родные на Ubuntu (благодаря использованию GTK).
Visual Studio Code от Microsoft - это интегрированная среда разработки (IDE) с поддержкой Mac, Linux и Windows.
я использую codelite, который является быстрорастущей IDE для C/C++. Пока это мой любимый лот, затмение слишком ограничительное, код::lite раздувается (на мой взгляд).
EDIT: Хотелось бы добавить, что он явно вдохновлен Visual Studio, так что пользователи VS инструментов должны чувствовать себя как дома.
Хотя другие ответы могут предположить, что MonoDevelop предназначен только для разработки на C#, он также обрабатывает C, C++, Python, Vala и Java. И Visual Basic, если это то, что вам нужно :).
В вашем комментарии вы сказали, что вас больше беспокоит "все в одном" аспекте, Однако, если вы хотите получить наилучший опыт, я считаю, что важно выбрать правильный инструмент.
C++/Qt:
Qt Creator: Кросс-платформенная интегрированная среда разработки (IDE), адаптированная к потребностям разработчиков Qt. (Я бы рекомендовал этот вариант, если вы планируете программировать на C++).
Java:
Eclipse: Это практически де-факто Java IDE.
C#/.NET:
Mono: MonoDevelop - это IDE, в первую очередь предназначенная для C# и других .NET языков.
Моей личной "IDE" является Gedit. Он минимален (похож на Блокнот++ на Windows), но делает работу. Он также поддерживает плагины, которые в основном могут сделать его настоящей IDE. Он поддерживает большинство языков, включая C/C++, Java, C#, Python, Ruby, PHP, HTML и т.д.
Если Вы используете KDE в качестве среды рабочего стола и не хотите запускать Gedit, Вы также можете попробовать Kate.
MonoDevelop , вероятно, самое близкое совпадение, но Mono - это не "типичная Linux" настройка. Eclipse предоставляет что-то похожее на Java (вместо .NET или Mono).
Для чего-то более традиционного или чистого, вы можете захотеть узнать больше о Perl или Python. Python довольно прост, но наиболее близкий к IDE плагин PyDev для Eclipse.
Процесс сборки Linux гораздо более скриптовый и в целом гораздо меньше зависит от IDE.
Вы также можете рассмотреть Lazarus, который в основном имитирует Delphi тип разработки приложений.
Не могу поверить, что все говорят "использовать KDevelop" для C++.
По моему опыту, нет лучшего инструмента, чем Qt Creator. Так и есть:
Я его не использовал, но слышал о Code::Blocks, что тоже неплохо. Из форумов, которые я только что прочитал, кажется, что Code::Blocks просто немного нестабилен. Вы можете посмотреть на эту тему на cplusplus.com. Просто погуглив "kdevelop vs codeblocks", я получил кучу результатов, которые сравнивают эти два, а также некоторые другие, такие как Anjuta, Eclipse и NetBeans.