Qual é a diferença entre um script e um aplicativo?

Uma resposta do stackoverflow: um lugar para os programadores

Tradicionalmente, um programa é compilado e um script é interpretado, mas isso não é mais importante. Você pode gerar uma versão compilada da maioria dos scripts, se realmente desejar, e outras linguagens 'compiladas' como Java são de fato interpretadas (no nível do código de bytes). Uma definição mais moderna pode ser que um programa se destina a ser usado por um cliente (talvez um interno) e, portanto, deve incluir documentação e suporte, enquanto um script é destinado principalmente ao uso do autor. A Web é um exemplo interessante de contador. Todos gostamos de pesquisar as coisas com o mecanismo de pesquisa do Google. A maior parte do código usado na criação do 'banco de dados' referenciado é usado apenas por seus autores e mantenedores. Isso o torna um script?

Fonte

Qual é a diferença entre um "script" e um "aplicativo"?

Historicamente, os aplicativos eram compilados bits de códigos enquanto os scripts eram interpretados. Hoje, porém, a principal diferença é a complexidade, eu acho. Os aplicativos são complexos e robustos e projetados para interagir com o usuário durante toda a execução do programa. Os scripts, por outro lado, geralmente são projetados para executar apenas algumas tarefas e executar o programa desde o início até o fim, depois de obter a entrada inicial do usuário.

Como outros disseram, de maneira tradicional, script é algo que é interpretado e aplicação é algo que é compilado.

No cenário atual, um aplicativo é algo usado predominantemente pelo cliente e um script é algo que pode ou não estar direta ou indiretamente relacionado ao aplicativo, mas resolve o objetivo do próprio autor.

Deixe-me dar um exemplo. Por exemplo, eu crio um software que analisa o PC em busca de ameaças potenciais de vírus e malware, e o software específico é um aplicativo para o cliente. Agora, dentro do mesmo software, eu posso escrever algumas linhas de código que podem fazer parte do aplicativo ou alguma funcionalidade de serviço do meu aplicativo. Agora, esses são chamados de scripts que podem ser gravados em:

  • Envie-me dados anônimos.
  • Verifique as atualizações de software mais recentes para o aplicativo.
  • Envie-me os relatórios de falha do aplicativo.

Dessa maneira, todas as funcionalidades que resolvem o objetivo do autor podem ser consideradas um roteiro.

Espero que isto ajude.

Com base na minha intuição, as diferenças incluem o seguinte:

Escopo e complexidade

Um script geralmente executa alguma tarefa pequena e específica. Ele pode ser escrito de cima para baixo em um único arquivo, e geralmente é. Um aplicativo compreende vários componentes e subsistemas que trabalham juntos para atingir uma meta maior para o usuário. Provavelmente, será necessário usar padrões de design e fatoração para manter essa complexidade gerenciável.

Entrada do Usuário

Um script geralmente pega um estado de entrada inicial do usuário e formula a saída com base nisso.Um aplicativo geralmente permite ao usuário manipular o estado no meio da execução por meio da interação do usuário e reformula a saída dinamicamente com base nisso.