Для меня это всего лишь GUI-версия всего, что мы делали в старые добрые времена терминала. Я всегда соглашусь с тем, что IDE не очень хороши, потому что они скрывают много вещей, особенно связанных со ссылками, но в некоторых случаях они имеют заметное преимущество, например, с некоторыми платформами разработки, такими как Qt.
Некоторые IDE, подобные визуальным для других, даже, кажется, анализируют ваш код по мере его ввода и обнаруживают ошибки еще до того, как вы даже скомпилируете: кажется логичным, что только IDE может работать в тесном контакте с компилятором, чтобы немедленно обнаружить проблему в типизированном источнике.
Мой дикий ответ, что война пламени в среде IDE / командной строки существует, заключается лишь в том, что исполняемый файл C / C ++ не очень хорошо обрабатывается со стандартизированной точки зрения, в отличие от языка D; каждая платформа обрабатывает компиляцию / компоновку / etc по-своему, поэтому, чтобы сделать ее менее запутанной, они создают IDE.
С вашей точки зрения, было бы проще использовать командную строку, если бы был только один компилятор со стандартными опциями, это было бы легко, но правда в том, что C / C ++ является гибким, поэтому, в конце концов, все платформы делайте это по-своему, поэтому в IDE не стоит тратить время на объяснения, как это сделать.
Если вы можете узнать, как исполняемый файл взаимодействует с ядром, или вы знаете что-нибудь о дизайне компилятора, возможно, есть способ работать с правильной командной строкой, но я сомневаюсь, что у вас есть.
Microsoft или Apple, какими бы злыми они ни были, должны предложить прямой способ создания приложения, не вдаваясь в детали, а поскольку создание приложения напрямую зависит от архитектуры ОС, оно вряд ли будет «стандартным», поскольку командная строка есть.
Проще говоря, это большие, сложные и сложные приложения, в которых вы не хотите слишком углубляться в то, что они делают -> IDE, небольшие кусочки программного обеспечения или простой дизайн системного программного обеспечения -> командная строка. За исключением, конечно, тех изящных библиотек, которые встраивают Makefile, но это другая история.
Кроме того, я думаю, что IDE используются, когда доставленное приложение имеет какое-то отношение, по иронии судьбы, к графическому интерфейсу пользователя или к чему-то, что имеет интерфейс или напрямую связано с ОС, поэтому, опять же, это также для людей, которые будут использовать пользовательский интерфейс / графический интерфейс, не зная как это работает, в то время как люди, которые будут программировать системы, не будут нуждаться во всем этом.
IDE - просто современное дерьмо, но я думаю, что через 100 лет командная строка все еще будет существовать.