As empresas Google e Canonical com uma iniciativa conjunta para garantir suporte ao desenvolvimento de aplicativos gráficos com base no framework para sistemas Linux desktop. O framework de construção de interfaces do usuário Flutter na linguagem Dart (motor de execução para aplicações em C++), permite criar aplicativos universais que funcionam em diferentes plataformas e é considerado uma alternativa ao React Native.
Apesar de haver um SDK Flutter para Linux, ele ainda era utilizado apenas para o desenvolvimento de aplicativos móveis e não suportava a construção de aplicativos desktop para Linux. No ano passado, a Google anunciou a intenção de adicionar ao Flutter a capacidade de desenvolver programas de desktop completos e apresentou uma versão alpha para o desenvolvimento desses programas para macOS. Agora, o Flutter com a capacidade de desenvolver aplicativos desktop para Linux. O suporte ao desenvolvimento de aplicativos para Windows ainda está em estágio inicial de protótipo.
Para renderizar a interface no Linux uma ligação baseada na biblioteca GTK (o suporte a Qt e outras ferramentas promete ser adicionado posteriormente). Além da linguagem nativa do Flutter, Dart, na qual os widgets são criados, os aplicativos podem usar a interface Dart Foreign Function para chamar código em C/C++ e acessar todos os recursos da plataforma Linux.
O suporte ao desenvolvimento de aplicativos para Linux foi oferecido na nova versão alpha do , na qual também foi implementada a capacidade de publicar aplicativos Linux no diretório Snap Store. No formato snap, é possível encontrar também a própria . Para o desenvolvimento de aplicativos baseados em Flutter, recomenda-se usar o editor de código Visual Studio Code ou os ambientes de desenvolvimento IntelliJ e Android Studio.
Como exemplo de aplicativos Linux baseados em Flutter, foi proposto o aplicativo para trabalhar com a lista de contatos do Google Contacts. No diretório três plugins Flutter com suporte a Linux foram publicados: para abrir URLs no navegador padrão, para salvar configurações entre sessões e para determinar diretórios típicos (downloads, imagens, vídeos etc.)
Fonte: opennet.ru
