Pergunta

Se a questão parecer fora do tópico, migre para outro domínio adequado no stackexchange.

P.por que ter GUI junto com CLI, quando você já possui interface de linha de comando?

Atualmente estou desenvolvendo um aplicativo.A partir de agora o aplicativo possui uma interface de linha de comando.

As máquinas alvo para aplicação serão 80% servidores e 20% estações de trabalho.Estou pensando em fornecer GUI também para o aplicativo.

Caso de uso da GUI:O registro do produto é o principal caso de uso, ou seja,meu produto precisa de uma chave de licença para funcionar.E depois disso, apenas algumas informações de texto serão mostradas sempre que for iniciado.Apenas 2-3 botões para executar funções estendidas.

Caso de uso CLI:O registro do produto esperará alguns argumentos como argumentos de linha de comando.Posteriormente, as 2-3 funções estendidas disponíveis na GUI também podem ser iniciadas na linha de comando.

Foi útil?

Solução

Alguns dos motivos pelos quais você pode querer uma GUI são:

  • Alguns ou todos os usuários não se sentem confortáveis ​​com a interface de linha de comando
  • Pode ser mais fácil usar uma GUI, devido à complexidade da aplicação.Pense no Adobe Illustrator, a GUI é muito mais simples do que escrever arquivos postscript ou similares
  • Existem visualizações, gráficos e coisas semelhantes que são melhores em uma GUI do que em ASCII

Suspeito que a principal coisa que o motivaria, com base na sua descrição, seja a primeira.Se você tiver alguns usuários que não se sentem confortáveis ​​com a interface de linha de comando, talvez você queira fornecer uma GUI.

Uma coisa a considerar: existem alguns aplicativos que usei que basicamente constroem sua GUI como um front-end para a versão de linha de comando, portanto, há muito código compartilhado.

Outras dicas

    03Col> n.u0
  1. 03Cli> Organização de informações. Aplicativos da interface do usuário têm um kit de ferramentas mais rico para apresentar os dados - por exemplo, a caixa de seleção é muito mais rápida para analisar de uma olhada, em seguida, para distinguir "Verdadeiro" de "False" de "False", os gráficos dão insight instantâneo no conjunto de dados, diferentes fontes ajudam a conduzir a atenção do usuário, etc.u003C/l
  2. i> n.u0
  3. 03Cli> Desempenho. Aplicação de console io é inerentemente lenta. O aplicativo de console que você vê é realmente dois aplicativos (aplicativo da interface do usuário chamado emulador de terminal e aplicativo real em execução no fundo) que se comunicam em 3 tubos (por exemplo, cópia de caracteres por caracteres). O emulador de terminal não sabe nada sobre a aplicação real e não pode fazer nenhuma suposição - analisa apenas os fluxos e reage aos códigos de controle. Os aplicativos da interfacegem são fundidos em um - em vez de emit ineficiente "emit string com códigos de controle> Contexto de mudança para diferentes aplicativos> Analisar a string> Atualizar apresentação" eles só precisam atualizar a apresentação (que eles fazem da mesma maneira que o emulador de terminal faz - mas Em vez disso, eles podem ser otimizados, por exemplo, cache algumas regiões de antemão para evitar re-renderização).u003C/l
  4. i> n.u0
  5. 03Cli> Facilidade de uso. As pessoas não-TI são muito mais usadas para a UI.u003C/l
  6. i> n.u003C/o
Licenciado em: CC-BY-SA com atribuição
scroll top