Quais são os benefícios obtidos com o uso da linha de comando para o desenvolvimento de software, usando uma GUI alternativa? A linha de comando é mais rápida para determinadas tarefas? Algumas ferramentas estão disponíveis apenas através da linha de comando?
command-line
br3w5
fonte
fonte
vi
em um arquivo, corrigiu um bug menor e salvou o arquivo atualizado. Talvezmake
esteja em andamento também.Respostas:
As vantagens da linha de comando sobre aplicativos GUI incluem:
man
comando unix ou a passagem -? Como argumento). Se alguém não conhece um recurso, pode ver facilmente o que a ferramenta fornece. Da mesma forma, existem padrões de sintaxe curinga definidos para especificar vários arquivos, com base no provável conhecimento existente do desenvolvedor.No entanto, os aplicativos de linha de comando têm essas desvantagens em comparação aos aplicativos da GUI:
fonte
Suponho que você queira dizer usando um compilador de linha de comando em vez de um IDE. Deixe um comentário, se não, e vou excluir minha resposta.
Aprendendo. Aprenda como as unidades de código são compiladas, vinculadas ou mapeadas juntas no seu idioma. Normalmente, você deve informar explicitamente ao compilador quais arquivos compilar e vincular. Então você entende melhor como funciona. Um IDE fará mágica para facilitar sua vida, mas manterá você ignorante.
Você então dá um passo adiante e aprende a criar seu próprio arquivo de composição. Esta é uma habilidade valiosa. Seu arquivo make faz com que o ciclo de construção se aproxime da conveniência da "mágica do IDE", mantendo o entendimento e o aprendizado completos.
Além disso, seu processo de criação é fácil de colocar no controle de origem. E é fácil portar seu processo de compilação para trabalhar com uma variedade de compiladores. Às vezes, é apenas uma questão de alterar uma linha no arquivo make para o nome do compilador.
Você desenvolve habilidades que permitem trabalhar em várias plataformas. Editores de texto e compiladores de linha de comando são muito semelhantes em todos os fornecedores e em todas as plataformas. Essas ferramentas básicas oferecem a você um passe para desenvolver em qualquer sistema, a qualquer hora e em qualquer lugar 24/7. Se você vive no Visual Studio a vida toda, será uma transição muito mais difícil trabalhar fora dele.
Se você seguir esse caminho, talvez queira aprender um editor de texto avançado como o VIM. Ele complementa a capacidade de trabalhar em qualquer plataforma, pois é suportado em quase todos os lugares. Ele tem uma enorme curva de aprendizado, mas o benefício é a capacidade de editar texto sem esforço em alta velocidade sem mover as mãos para o mouse.
Aliás, eu não sou contra IDEs.
fonte
As GUIs têm a vantagem de poder usar visualizações avançadas. Isso pode ser extremamente útil para tornar significativos os dados complexos.
As linhas de comando, por outro lado, geralmente são mais poderosas (por exemplo, totalmente programáveis) e também geralmente mais rápidas. As outras respostas se expandiram nisso - aqui, gostaria apenas de mencionar que as GUIs não oferecem uma vantagem para algumas tarefas:
No desenvolvimento, muitas tarefas não precisam de visualização que não possa ser feita usando uma interface de linha de comando / texto. Considere a compilação: bons editores de texto (Vim, Emacs) suportam prontamente a análise de mensagens de erro e pulam diretamente para o erro no código. IDEs gráficos não oferecem mais. Simplificando, para essas tarefas, não há necessidade de uma interface gráfica e você perderia a flexibilidade e a eficiência de uma interface de linha de comando.
Por outro lado, uma visualização interativa pode ser muito útil se você estiver lidando com uma interação de dados complexa. O software de controle de versão que pode exibir gráficos de ramificações geralmente supera as interfaces de texto aqui. Por exemplo, este é um instantâneo de um dos meus repositórios:
Isso é muito mais conveniente do que a interface de texto, mesmo que essa nem seja uma visualização particularmente poderosa. Mas, mais uma vez, observe que manipular o repositório é mais rápido usando a linha de comando (pelo menos para mim). Eu uso a GUI apenas para exibir os ramos.
Observe também como o Github adicionou recentemente uma interface de linha de comando em reconhecimento ao fato de que muitas tarefas podem ser realizadas mais rapidamente digitando um comando do que clicando em uma página da web.
fonte