Esse aplicativo nativo é provavelmente apenas um navegador da web antigo

Logotipo do navegador Chromium.

O Chrome não apenas dominou a web – ele também dominou os aplicativos nativos. Muitos dos aplicativos que você executa no Windows, Mac e até mesmo no Linux consistem em peças desatualizadas do Chromium , o mecanismo que forma a base do Google Chrome.

Quais aplicativos são criados a partir do Chromium?

Existem várias maneiras de um desenvolvedor construir um aplicativo usando o mecanismo do navegador Chromium. Electron é o mais conhecido , mas muitos outros aplicativos usam algo chamado CEF, o Chromium Embedded Framework.

Conversando online? O Slack é um aplicativo popular desenvolvido com Electron. Fazendo anotações? O Evernote usa CEF e o Trello usa Electron. Ouvindo música? Sim, você adivinhou – o Spotify usa CEF e o Amazon Music também.

Você pode pensar que a Microsoft se afastaria do Chromium porque, afinal, ele criou o Windows. Você estaria errado. GitHub Desktop, Microsoft Teams, Skype, Visual Studio Code e Yammer são todos aplicativos Electron. Até mesmo o novo aplicativo Xbox para Windows 10 foi desenvolvido com Electron, em vez do próprio UWP (Plataforma Universal do Windows) da Microsoft.

A maioria dos jogos de PC fica com aplicativos nativos, mas seus inicializadores e ferramentas de chat associadas certamente não. Discord e Twitch.tv usam Electron. Battle.net, Desura, Epic Games Launcher, GOG Galaxy, Uplay e até mesmo Steam usam CEF. O cliente Origin da EA usa Qt WebEngine , que também integra o código Chromium.

Você pode ter uma ideia de quantos aplicativos usam o Chromium folheando as listas muito incompletas de aplicativos Electron e CEF na Wikipedia. Aplicativos de backup, como CrashPlan, estão incluídos lá, bem como gerenciadores de senha, como Bitwarden, e utilitários, como Adobe Creative Cloud.

Recomendado:  Como iniciar uma apresentação de slides do PowerPoint

RELACIONADOS: O que são aplicativos de elétrons e por que se tornaram tão comuns?

É como um aplicativo da Web (mas usa mais memória RAM e armazenamento)

Uso lento da memória no Gerenciador de Tarefas do Windows.

Cada aplicativo baseado em elétrons ou CEF reúne uma cópia separada de partes do Chromium. Embora os aplicativos que usam Electron e CEF sejam semelhantes aos aplicativos da web em seu navegador, eles são menos eficientes e usam mais memória em seu sistema.

Quando você abre o Gmail em uma guia do Chrome e o Facebook em outra, seu sistema operacional só precisa executar uma cópia do Chrome. Mas quando você executa dois aplicativos Electron ou CEF diferentes, seu sistema operacional precisa de uma cópia separada do Electron ou CEF para cada um.

Não é incomum ver um aplicativo baseado em Electron, em particular, consumir uma quantidade surpreendente de RAM. Novamente, como cada um desses aplicativos inclui arquivos Chromium separados, eles usam espaço adicional em seu sistema.

Por que eles estão desatualizados e isso é um problema?

A documentação de segurança da Electron explica por que ele baseia seu código em versões desatualizadas do Chromium:

“Enquanto a Electron se esforça para oferecer suporte a novas versões do Chromium o mais rápido possível, os desenvolvedores devem estar cientes de que a atualização é uma tarefa séria – envolvendo a edição manual de dezenas ou mesmo centenas de arquivos. Dados os recursos e contribuições disponíveis hoje, o Electron geralmente não estará na versão mais recente do Chromium, ficando para trás por várias semanas ou alguns meses. ”

Mesmo depois que o projeto Electron cria essa nova versão, os desenvolvedores que criam aplicativos Electron devem pegar esse código, integrá-lo em seus aplicativos Electron e enviar uma atualização.

Recomendado:  Como usar o reconhecimento de som no iPhone

Isso não é tão assustador quanto parece, no entanto. A documentação do Electron aconselha os desenvolvedores a evitar a exibição de código não confiável e a depender principalmente de recursos locais ou de conteúdo remoto seguro e confiável. É por isso que muitos aplicativos do Electron não parecem ser navegadores da web. Por exemplo, o Slack usa tecnologias da web para fornecer uma interface de chat, mas você acessa o navegador da web assim que clica em um link.

Por que os desenvolvedores usam o Chromium?

Os desenvolvedores gostam dessas soluções porque usam tecnologias da web, com as quais a maioria já está familiarizada. Como a Electron orgulhosamente apregoa em sua página inicial , “Se você pode construir um site, pode construir um aplicativo para desktop”.

Eles são mais poderosos do que simples aplicativos da web, no entanto. Os aplicativos Electron podem acessar seu sistema de arquivos e outros recursos do sistema local. Muitos aplicativos CEF são aplicativos nativos que incorporam um navegador Chromium. Por exemplo, o Steam incorpora um navegador para exibir as interfaces da loja e da comunidade.

Os aplicativos Electron também são multiplataforma, como o Chromium. Você pode executar um aplicativo como o Slack no Windows, Mac e Linux, bem como na web. Um desenvolvedor não poderia fazer um aplicativo de plataforma cruzada se dependesse das tecnologias Microsoft Edge ou Apple Safari. Os desenvolvedores desejam criar um aplicativo uma vez e executá-lo em qualquer lugar. Isso economiza muito tempo e recursos em comparação com a criação de um aplicativo nativo para cada plataforma.

Essas soluções baseadas em cromo oferecem uma melhoria em relação ao que veio antes de muitas maneiras. Antes de adotar o CEF, o Steam incorporava o Internet Explorer. Muitos aplicativos no Windows também incorporam uma interface do Internet Explorer – estamos muito melhor com o Chromium.

Recomendado:  O que há de novo no Ubuntu 17.10 “Artful Aardvark”, disponível agora

PWAs podem oferecer uma saída

A seção "Instalar aplicativo?"  pop-up no Google Chrome.

Electron, CEF e tecnologias semelhantes têm muitos aspectos positivos, mas também negativos. Os Progressive Web Apps  (PWAs) podem um dia oferecer uma saída porque fornecem aos modernos aplicativos da web uma maneira de trabalhar offline. Ao contrário do Electron e do CEF, no entanto, os PWAs usam seu navegador padrão em segundo plano. Você também pode instalá-los por meio de seu navegador da web, sem necessidade de atualizar e agrupar manualmente o código do Chromium.

À medida que a Microsoft muda para uma versão baseada em Chromium de seu navegador Edge , será interessante ver se os PWAs começam a competir com o Electron com sucesso. Seria definitivamente uma solução mais limpa com menor uso de memória.