DEV Community

loading...
Flutter

O que é o Flutter e Dart

telles profile image Telles (@UnicornCoder) ・2 min read

Intro

Mas afinal o que é o Flutter?
Flutter é um SDK para desenvolvimento de aplicativos multiplataforma e aplicações web, criada pela Google, a ferramenta tem o seguinte princípio:

Desempenho: o app desenvolvido tem performance de app nativo;
UI rica e nativa, com experiência do usuário natural de cada plataforma;
Desenvolvimento rápido por meio do uso de widgets e do hot reload (aquele lance de atualizar a aplicação quando você salva seu código no editor e já poder testar as alterações).

A primeira versão do Flutter foi lançada em maio de 2017 e atualmente (2019), está na versão 1.7 com recursos para desenvolvimento Web.

O Flutter é dividido em duas camadas principais:

Engine, escrita em C/C++ e responsável pela estrutura de execução. Ela é composta pela Skia, uma biblioteca de renderização 2D e de texto, e pelo Dart, que é a linguagem utilizada no desenvolvimento;

Framework, utilizando a linguagem Dart, é onde criamos a implementação das Widgets da nossa aplicação.
Ele é responsável pelos componentes visuais, incluindo aqueles específicos para Android e para iOS, além da renderização de layouts responsivos.

Mas afinal porquê o Dart?

Dart é uma linguagem de programação apresentada pelo Google, em 2011, com o objetivo de substituir o JavaScript como principal linguagem embutida nos navegadores.

É possível citar como algumas de suas características o fato de ser orientada a objetos, declarativa, mantida majoritariamente pelo Google e por ser tipada. Além disso, o que foi o mais importante e decisivo na escolha dessa linguagem para Flutter é que ela pode ser compilada em ahead-of-time e just-in-time.

  • O Dart é AOT (Ahead Of Time) compilado em código nativo rápido, previsível, que permite que quase todo o Flutter seja escrito no Dart. Isso não apenas torna o Flutter rápido, praticamente tudo (incluindo todos os widgets) pode ser personalizado.

  • O Dart também pode ser compilado com JIT (Just In Time) para ciclos de desenvolvimento excepcionalmente rápidos e fluxo de trabalho que muda o estado (incluindo a popular sub-second stateful hot reload do Flutter).

Se você ja é familiarizado com o TypeScript ou até mesmo Java e/ou .net você vai lidar facilmente com o Dart, porque ele é uma linguagem tipada como disse aqui em cima além de trabalhamos com Classes, Async/await.

E tipar seus dados pode te ajudar muito na hora do desenvolvimento porque você sabe realmente o dado que entra e que sai para cada método que vai criar.

Vamos falar mais das particularidades do Dart nos próximos artigos, não se preocupe.

Agora que você já sabe o que é o Flutter e o Dart já podemos ir mais a fundo com nossos artigos e entender mais do que essa linguagem/framework pode nos oferecer.

Nos vemos nos próximos artigos!

Discussion

pic
Editor guide