BT

Flutter - Framework multi-plataforma de UI móvel do Google agora em beta

| por Sergio De Simone Seguir 14 Seguidores , traduzido por Diogo Carleto Seguir 34 Seguidores em 05 abr 2018. Tempo estimado de leitura: 2 minutos |

O Flutter, agora em beta, é uma tentativa do Google em criar um framework para interfaces de usuários (UI) multi plataformas tanto para o iOS quanto para Android que se comportam e parecem como nativos, embora não sejam UIs padrão.

O Flutter suporta uma abordagem reativa para a definição de UI, parecido com o React Native. O que o separa dos outros frameworks multi plataformas baseados em views Web é a dependência do Dart para evitar a necessidade de uma ponte de JavaScript entre a UI e os serviços nativos fornecidos pela plataforma do sistema operacional. Usando o Dart, que é compilado para código nativo, o Flutter não tem que pagar pela mudança de contexto devido à ponte JavaScript.

Frameworks multi plataformas visam fornecer uma aparência nativa de UI e também usam widgets implementados nativamente para representar botões, tabelas, etc. Isso normalmente requer que diferentes partes da app se comuniquem usando uma ponte JavaScript, que tende a ser lenta. Para contornar isso, o Flutter fornece sua própria coleção de widgets e os desenha diretamente na tela fornecida através da plataforma do OS. Outra vantagem associada com essa abordagem é a forma como o Dart renderiza a UI. Ao contrário do CSS boxing model, o Android Layouts ou o iOS constraints, que tentam fornecer abstrações para descrever qualquer possibilidade de renderizar elementos de UI na tela, cada widget do Flutter tem seu próprio modelo de layout simplificado. Levando isso ao extremo, para centralizar um widget, você o coloca dentro de um Center. Da mesma forma, para incluir algum preenchimento ao redor, basta incluí-lo em um Padding widget. O código seguinte é um exemplo simples de uma caixa centrada, incluindo um rótulo e um ícone que são empilhados verticalmente:

new Center(
  child: new Column(
    children: [
      new Text('Hello, World!')),
      new Icon(Icons.star, color: Colors.green)
    ]
  )
)

Toda navegação e temas são representados por widgets no Flutter, sendo possível mudar a aparência da UI ou a maneira como é feita a navegação através das views usando um widget pai.

Desde a versão alpha do Flutter, o Google vem trabalhando em uma melhor ferramenta de integração, como suporte para o Android Studio e o Visual Studio Code, melhor interoperabilidade de plataformas, melhor hot reloading, e um widget inspector para inspeção da árvore de um widget.

Uma vez que o Flutter usa o Dart, um fator chave na condução de sua adoção será a disponibilidade de pacotes de terceiros que permitem que os desenvolvedores reutilizem o código sem ter que codificar tudo a partir do zero, assim como o uso de SDKs externos como o Firebase, SQLite, Facebook Connect, etc. É possível verificar o catálogo de pacotes disponíveis para o Flutter, que inclui mais de 1000 pacotes, para garantir que se tenha tudo o que precisa.

Avançando para a versão 1.0, o Google diz que o desenvolvimento terá como foco a estabilização e a adição de suporte para mais cenários, tais como facilitar a inclusão do Flutter em uma aplicação já existente, usar inline WebViews, etc.

É possível testar o Flutter beta, basta seguir as instruções de instalação. Além disso, é muito interessante dar uma olhada na Flutter Gallery, a Posse Gallery, e esta lista de links úteis.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião

Faça seu login para melhorar sua experiência com o InfoQ e ter acesso a funcionalidades exclusivas


Esqueci minha senha

Follow

Siga seus tópicos e editores favoritos

Acompanhe e seja notificados sobre as mais importantes novidades do mundo do desenvolvimento de software.

Like

Mais interação, mais personalização

Crie seu próprio feed de novidades escolhendo os tópicos e pessoas que você gostaria de acompanhar.

Notifications

Fique por dentro das novidades!

Configure as notificações e acompanhe as novidades relacionada a tópicos, conteúdos e pessoas de seu interesse

BT