Per me è solo la versione GUI di tutto ciò che abbiamo fatto nei bei vecchi tempi del terminale. Concordo sempre sul fatto che gli IDE non sono molto superiori perché nascondono molte cose, specialmente per quanto riguarda i collegamenti, ma in alcuni casi presentano un notevole vantaggio, ad esempio con alcune piattaforme di sviluppo come Qt.
Alcuni IDE come visual di altri sembrano addirittura analizzare il codice durante la digitazione e rilevare errori prima ancora che vengano compilati: sembra logico che solo un IDE possa lavorare a stretto contatto con un compilatore per rilevare immediatamente il problema nell'origine digitata.
La mia risposta selvaggia che esiste la guerra di fiamma IDE / riga di comando è solo perché l'edificio eseguibile C / C ++ non è gestito molto bene da un punto di vista standardizzato, a differenza del linguaggio D; ogni piattaforma gestisce la compilazione / collegamento / etc a modo suo, quindi per renderlo meno disordinato creano un IDE.
Dal tuo punto di vista potrebbe essere più semplice utilizzare la riga di comando, se ci fosse stato un solo compilatore con opzioni standard, sarebbe stato facile, ma la verità è che C / C ++ è flessibile, quindi alla fine tutta la piattaforma fai a modo suo, quindi l'IDE non spreca spiegando come farlo.
Se puoi imparare come un eseguibile parla al kernel o se sai qualcosa sulla progettazione del compilatore, forse c'è un modo di lavorare con una riga di comando corretta, ma dubito che tu abbia.
Microsoft o Apple, per quanto malvagi sarebbero, devono proporre un modo semplice per creare un'applicazione senza entrare nei dettagli, e poiché la creazione di un'applicazione dipende direttamente dall'architettura del sistema operativo, difficilmente sarà "standard" come la riga di comando è.
Per dirla in applicazioni semplici, grandi e complesse in cui non si vuole scavare troppo in profondità in ciò che fa -> IDE, piccoli pezzi di software o semplice progettazione di software di sistema -> riga di comando. Tranne ovviamente quelle belle librerie che incorporano un Makefile, ma questa è un'altra storia.
Inoltre, penso che gli IDE vengano utilizzati quando l'applicazione fornita ha qualcosa a che fare con, ironicamente, una GUI o qualcosa che ha un'interfaccia o è direttamente legata a un sistema operativo, quindi, ancora una volta, è anche per le persone che useranno un'interfaccia utente / GUI senza sapere come funziona, mentre le persone che programmeranno i sistemi non avranno bisogno di tutto.
L'IDE è solo una merda moderna, ma penso che tra 100 anni la riga di comando esisterà ancora.