Quali benefici si ottengono dall'usare la riga di comando per lo sviluppo del software rispetto all'uso di una GUI alternativa? La riga di comando è più veloce per certe attività? Alcuni strumenti sono disponibili solo tramite la riga di comando?
I vantaggi della riga di comando sulle applicazioni GUI includono:
man
o il passaggio -? come argomento). Se qualcuno non conosce una funzione, può facilmente vedere cosa fornisce lo strumento. Allo stesso modo, esistono standard di sintassi dei caratteri jolly definiti per specificare più file, attingendo alle conoscenze degli sviluppatori esistenti. Tuttavia, le applicazioni a riga di comando hanno questi svantaggi rispetto alle applicazioni GUI:
Suppongo che intendi usare un compilatore da riga di comando al posto di un IDE. Lascia un commento in caso contrario e cancellerò la mia risposta.
Learning. Scopri come le unità di codice sono compilate, collegate o mappate insieme nella tua lingua. In genere è necessario indicare esplicitamente al compilatore quali file compilare e collegare. In questo modo capirai meglio come funziona. Un IDE farà magie per semplificarti la vita ma ti manterrà ignorante.
Quindi fai un ulteriore passo avanti e impara a creare il tuo make-file personale. Questa è un'abilità preziosa. Il tuo make-file fa sì che il ciclo di costruzione si avvicini alla praticità della "magia IDE" pur mantenendo la piena comprensione e apprendimento.
Inoltre, il processo di compilazione è facile da inserire nel controllo del codice sorgente. Ed è facile portare il tuo processo di compilazione per lavorare con una varietà di compilatori. A volte è solo questione di cambiare 1 riga nel make-file per il nome del compilatore.
Sviluppa abilità che ti consentono di lavorare su molte piattaforme. Editor di testo e compilatori da riga di comando sono molto simili da tutti i fornitori e su tutte le piattaforme. Questi strumenti di base ti danno un pass da sviluppare su qualsiasi sistema, in qualsiasi momento, ovunque 24 ore su 24, 7 giorni su 7. Se hai vissuto in Visual Studio per tutta la vita, sarà molto più difficile passare al di fuori di esso.
Se segui questo percorso, potresti voler imparare ad usare un editor di testo avanzato come VIM. Completa la capacità di lavorare su qualsiasi piattaforma poiché è supportata quasi ovunque. Ha una curva di apprendimento enorme, ma il pay off è la possibilità di modificare il testo senza sforzo ad alta velocità senza muovere le mani al mouse.
A proposito, non sono contro IDE.
Le GUI hanno il vantaggio di poter utilizzare visualizzazioni avanzate. Questo può essere estremamente utile per rendere significativi i dati complessi.
Le linee di comando, d'altra parte, sono spesso più potenti (ad esempio completamente programmabili) e anche di solito più veloci. Le altre risposte si sono ampliate su questo - qui vorrei solo menzionare che le GUI non offrono un vantaggio per alcune attività:
In fase di sviluppo, molte attività non richiedono effettivamente alcuna visualizzazione che non possa essere eseguita utilizzando un'interfaccia testuale / di testo. Prendi la compilazione: i buoni editor di testo (Vim, Emacs) supportano facilmente l'analisi dei messaggi di errore e salteranno direttamente all'errore nel codice. Gli IDE grafici non offrono di più. In parole semplici, per tali compiti non c'è bisogno di un'interfaccia grafica, e si perderebbero la flessibilità e l'efficienza di un'interfaccia a riga di comando.
D'altra parte, una visualizzazione interattiva può essere molto utile se hai a che fare con una complessa interazione dei dati. Il software di controllo della versione in grado di visualizzare i grafici delle diramazioni spesso batte qui le interfacce di testo. Ad esempio, questa è un'istantanea da uno dei miei repository:
Questoèmoltopiùconvenientedell'interfacciatestuale,anchesequestanonènemmenounavisualizzazioneparticolarmentepotente.Maancoraunavolta,sinoticheinrealtàmanipolareilrepositoryèpiùveloceusandolarigadicomando(almenoperme).IousolaGUIsolopervisualizzareirami.
Notainoltrecome
Leggi altre domande sui tag command-line