Thiago Cantero

Tecnologia e Entretenimento

Banco de DadosOpensourceProgramação

Aplicações Desktop, ainda vale a pena?

 

Bom, faz um tempo que não posto nada por aqui e pensei em algo que desperta uma certa polêmica.

Afinal de contas, aplicações em Desktop valem muito a pena?
O intuito deste artigo não é de promover uma reflexão e não sair criando bunker para uma possível  invasão zumbi.

O assunto é profundo, existe muita coisa correlacionada, mas vamos lá…

Imagine um cenário que sua empresa detém um ERP (Enterprise Resource Planning), baseado em ambiente Web, assim como este Blog (orgulhosamente rodando em WordPress), em um servidor fora do País. Você tem uma equipe que gerencia a aplicação, através de sua fábrica de software, DBA, cultura DevOp e todas estas novas “boas novas” do mercado da TI.

De maneira hipotética, imagine um conflito, mas aquele bem complexo como o já visto na Guerra Fria, o País em questão que hospeda sua aplicação, simplesmente nega você e sua equipe, acessá-la, e por consequência, você fica de mãos atadas, pois sua operacionalização está inerte, pois a regra de negócio rodava tudo ali. Claro que é um cenário fictício, mas bem provável de ocorrer, lembre-se que em um mesmo século, vivemos duas Grandes Guerras Mundiais, mais a Guerra Fria, dentre outros conflitos isolados mundo afora. Isso só no século 20.

Enfrentamos, digo pela geração que faço parte, a dos anos 80, a primeira crise (tal qual uma Guerra) a Pandemia do Coronavírus, e podemos aferir, sem erros, que não estamos muito preparados para estas crises como um conflito desta magnitude, vide o carnaval que irá ocorrer em fevereiro…

Bom, por que então aplicações Desktop, se tudo hoje converge na Nuvem ou Cloud, como quiserem chamar a Internet (que sempre teve este conceito). Pelo exemplo que dei acima, se na hipótese que citei acima, sua empresa detivesse algo que ela tem controle e acesso pleno, não estaria com prejuízo de operar seu negócio.

Perfeito, mas em que contexto a aplicação Desktop pode sanar meus problemas?
Elas são – in tese – mais seguras, pois se forem bem escritas (padrões de projeto, clean code, dentre outros cuidados que o desenvolvedor deve se atentar), com o Sistema Operacional devidamente atualizado, fornecem muito mais segurança do que uma aplicação Web, hospedada por terceiros, que você não tem, muitas das vezes, o usuário root (muitos serviços rodam em sistemas Unix-Like) <(“) <3 .

E por que não uma solução web, rodando em um ambiente de intranet?Sim, também é uma solução, todavia, entretanto, você deve tomar alguns cuidados como configuração do seu Servidor Web, proteger o Servidor de Banco de Dados (aplica-se para ambas aplicações web/desktop), além de obviamente, realizar um backup e protegê-lo de maneira que de fato, você tenha como fazer um Disaster Recovery, e olha que nestes anos que trabalho, poucas foram as empresas que dá atenção para este quesito.

Diante toda este cenário hipotético, e não tão irreal de se ocorrer, tenho aqui algumas linguagens ainda em pleno desenvolvimento, e multiplataforma:

File:Lazarus logo.png - Wikimedia Commons

Lazarus-IDE, é uma excelente opção, pois como o lema da aplicação diz:

Write Once

Compile Anywhere

Escreva uma vez e compile em qualquer lugar, isso mesmo, você desenvolve em Object Pascal, uma linguagem muito poderosa e absurdamente madura, e existem compiladores (FPC – Free Pascal Compiler) para Windows, MacOS e Linux. A síntaxe, bem como a IDE, não deixam nada a desejar ao consagrado Delphi, que agora é da Embarcadero, não mais da Borland…

GitHub - flutter/flutter: Flutter makes it easy and fast to build beautiful  apps for mobile and beyond

Flutter, é um SDK que possibilita que você crie interfaces Gráficas, utilizando a linguagem DART, assim como o Lazarus tem uma vantagem à mais, ele permite você compilar nativamente para Android, IOS, MacOS, Windows e Linux. Bem promissora essa linguagem, pode ser uma alternativa para projetos de sua empresa.

 

File:Electron Software Framework Logo.svg - Wikimedia Commons

Electron, SDK que tem por trás o Node.JS e o Chromium como engine de execução, ou seja, ela funciona como um Browser, rodando seu código escrito em HTML5 e Javascript, o Visual Code e o Skype são feitos nesta plataforma. Outra opção para ter um cuidado para as informações importantes de seu negócio.

 

No final, sou contra a Web?!De forma alguma!
Ah, mas você tá criticando e sendo paranóico!!!Nada disso, jovem!
Muito pelo contrário, pois se você usa “app” de smartphone, você usa “desktop” é o mesmo conceito, lembre-se que ele está rodando em seu ecossistema de maneira que todos os recursos de seu aparelho sejam devidamente utilizado, e forneça uma camada de segurança. Então deixa de ser modinha e observe o contexto ao qual está inserido! 😉

Fico por aqui, até breve!