As desvantagens de criar um aplicativo não baseado na Web
![](http://ilbusinessonline.com/img/business-technology-customer-support/213/disadvantages-building-non-web-based-application.jpg)
Aplicativos de software em uso geral generalizado podem ser divididos em dois tipos de desenvolvimento - aqueles projetados para serem executados na Web e outros que não são baseados na Web. Os aplicativos baseados na Web são projetados para acesso por meio de um navegador da Web ou de um aplicativo cliente que serve como interface do usuário. Aplicativos não baseados na Web são destinados para uso offline. Construir esse tipo de aplicativo tem algumas desvantagens que o programador deve ter em mente durante a fase de desenvolvimento.
Vantagem de aplicativos baseados na web
Um aplicativo é qualquer software que fornece instruções para um computador, permitindo que ele execute uma tarefa específica. A principal diferença entre os aplicativos baseados na Web e aqueles destinados ao uso off-line está no método pelo qual os usuários acessam o programa. Os aplicativos baseados na Web geralmente são acessados por meio de uma conexão de rede ou de um navegador da Web. Isso dá ao programador um público muito maior de usuários em uma área geográfica mais ampla. Contanto que os usuários possam acessar o aplicativo com um navegador, ele estará disponível mundialmente, independentemente do sistema operacional ou hardware instalado em seus computadores.
Aplicativos não baseados na Web
Com um aplicativo não baseado na Web, o acesso é normalmente realizado executando um programa executável no computador do usuário. Ao contrário de um aplicativo da Web, o público é limitado ao indivíduo sentado no teclado e olhando para a tela. Além disso, um aplicativo projetado para uso off-line depende de seus próprios protocolos para a execução do programa e a interface do usuário.
Vantagens de aplicativos não baseados na Web
Como um aplicativo não baseado na Web não precisa ser compatível com os aplicativos de navegador da Web, o programa pode dispensar muitos dos recursos de segurança normalmente necessários para estabelecer uma conexão de dados segura entre um servidor Web e um público mundial. Além disso, o programador pode desenvolver código para um sistema operacional específico em vez de adotar uma abordagem mais generalizada tendo em mente a compatibilidade com a Web. Isso permite que o programador construa software que aproveite as vantagens específicas do sistema operacional subjacente.
Personalização do Design como Desvantagem
Uma das principais desvantagens de uma aplicação não baseada na Web é também uma das suas vantagens: a natureza personalizada do design do programa. Nessa abordagem, o desenvolvedor deve gastar tempo codificando elementos de programa que já existem em produtos de navegação na Web. O desenvolvedor também deve criar uma interface de usuário, que provavelmente não terá a familiaridade dos aplicativos baseados na Web que geralmente têm a mesma aparência. O design pode ser acelerado usando um kit de ferramentas como o GTK ou o QT em um ambiente não baseado na Web, mas os benefícios são limitados aos recursos do aplicativo que o kit de ferramentas deve abordar. Quanto mais personalizado for o aplicativo, mais programação o desenvolvedor deve fazer e menos útil será um kit de ferramentas ou outros elementos de design genéricos.
Implantação de atualizações como desvantagem
Outra desvantagem de um design de aplicativo não baseado na Web diz respeito à velocidade com que as atualizações de software são implantadas. Com um aplicativo baseado na Web, a atualização é simplesmente uma questão de fazer o upload da nova versão para um servidor. Assim que a versão atualizada estiver on-line, todos os usuários terão acesso ao aplicativo atualizado. Com aplicativos não Web, a atualização do software exige que cada usuário obtenha a atualização e, em seguida, instale-a em seu computador. O uso de assistentes de instalação de terceiros pode simplificar um pouco essa tarefa, mas, mesmo assim, os atrasos inevitavelmente ocorrem nos usuários que obtêm e implantam o software atualizado.