Flutter — Conhecendo o Flutter

Igor L Sambo💙🇲🇿
GDG Maputo
Published in
4 min readNov 16, 2018
flutter.io

O desenvolvimento de aplicações mobile tem se popularizando cada vez mais ao longo dos tempos, acompanhando assim a evolução e popularização dos smartphones que acabaram dominando o mundo!

Usamos todos smartphones, porém não correm todos o mesmo SO e foi pensando nisso que os engenheiros da Google lançaram em Maio do ano passado(2017) o Flutter, permitindo aos desenvolvedores maior facilidade de desenvolvimento e gestão de diferentes projectos para uma mesma app mas em plataformas diferentes, mais concretamente o iOS e o Android.

Este é o primeiro artigo da série Flutter. Desde conhecendo o Flutter, até tornamo-nos amigos íntimos deste e contará com 3 artigos:

  1. Conhecendo o Flutter (este artigo);
  2. Hey Flutter, Diz Olá Mundo e
  3. Flutter Widgets.

O que é o flutter?

Flutter é um FrameWork para desenvolvimento mobile da Google que permite desenvolver aplicações nativas IOS e Android usando um único código. As aplicações desenvolvidas em Flutter são com recurso a linguagem de Programação Dart e é baseado e widgets, o que faz com que aplicações desenvolvidas com recurso a flutter possam ser chamadas Widget Applications.

O framework é grátis e de código aberto!

Widgets e Flutter!

Em Flutter tudo é considerado widget, desde a cor do botão até a própria tela.

Mas o que são Widgets???

Widgets são os componentes de uma aplicação que permitem ao utilizador interagir com as várias funcionalidades da nossa App.

E quanto mais bonitos e chamativos os widgets mais interessante ao utilizador fica interagir com a app!

O Flutter que não é bobo, vem trazer o conceito de widgets como um main core do desenvolvimento de aplicações mobile, tornando assim a aplicação mais chamativa e interactiva.

É possível controlar usando o conceito Widget tree, que poderemos ver mais adiante na série e que permite melhor gerenciamento de nossa aplicação e cada frame que ela possui.

Dart e Flutter!

https://cdn-images-1.medium.com/max/800/1*bAUFoOPQ3gcv7y4Kdz82tw.png

Para aplicações que permitam desenvolver com base em widgets a Google escolheu o Dart, e devo dizer que foi uma escolha acertada depois de dar uma olhada!

Dart é uma linguagem de programação concisa, fortemente codificada e orientada a objetos.

O Dart é de fácil aprendizado, especialmente pra quem já vinha programando em Swift, C#, java e javaScript, pois carrega consigo algumas características similares a estas como o facto de ser case sensitive, possibilidade de definir propriedades de elementos. Creio que a partir destas duas já deu pra identificar-se mais com o Dart, seja bem-vindo 😁.

O Dart é uma linguagem que permite o desenvolvimento de aplicações em módulos tornando a percepção do código mais simples e ainda a sua manutenção; Possui ainda uma performance magnífica em termos de desenvolvimento e produção pelo facto de suportar a compilação Just-in-Time e Ahead-of-Time.

Compilação Just-In-Time permite compilar o código diretamente no dispositivo o que permite o uso do hot-reload do flutter que iremos abordar ainda nesta série.

Ahead-Of-Time permite que o código da aplicação compile directo no código ARM, pelo que a app arranca mais rápido e torna a performance mais rápida, o que dá ao flutter um desenvolvimento mais rápido e possibilidade de correr em IOS e Android com mesma performance.

commitstrip.com

Flutter combina o melhor de ambas soluções.

Material Design e Flutter!

Para desenvolver aplicações sejam mobile, web ou desk nos últimos tempos a opção mais viável é o Material Design e… claro é da Google, portanto não seria uma opção a descartar no desenvolvimento de aplicações baseadas em widgets, algo que a Google já possui.

O Material Design nada mais é que uma forma de organização dos elementos de uma aplicação (widgets), ou de forma mais simples regras que definem o comportamento destes widgets.

O flutter usa bibliotecas do material design como o material.dart.

import 'package:flutter/material.dart';

O que permite o desenvolvimento de widgets de forma mais organizada e claro mais bonita, visto que o Material Design tem como grande feature trazer designs mais bonitos ao mundo de desenvolvimento de aplicações.

A partir deste pacote com várias classes relacionadas com o Material design preparadas para desenvolvimento em Dart é possível ter um mesmo application behavior para ambas plataformas IOS e Android.

Porquê Flutter?

Bom, foram explicados alguns conceitos relacionados ao Flutter, mas será que é o suficiente para largar Swift e Kotlin (ou Java), largar outros frameworks como Ionic e React native??

Eu creio que já sabemos a resposta a essa pergunta, claro que seria Sim, mas porquê???

Resposta:

O Flutter possui:

· Modern Reactive framework;

· Engenho que permite rápida renderização para aplicações 2D directo na app;

· Ferramentas de desenvolvimento como o Inspector e flutter Doctor que iremos abordar mais adiante nesta série;

· Compila directo no código ARM do dispositivo.

Qualidade e performance com facilidade de desenvolvimento e renderização rápida e animações leves!

Requisitos necessários

Para desenvolver widget apps usando o Flutter basta-nos ter :

  • Android Studio v3.0 ou superior;
  • Xcode v9.0 ou superior e

Baixar e instalar o flutter sdk: https://flutter.io/docs/get-started/install

Bom, este foi literalmente o meu primeiro artigo!

Obrigado por acompanhar até ao fim e espero por você no próximo artigo.

Para questões e sugestões esteja a vontade para tal nos comentários, email igorlsambo1999@gmail.com ou twitter @lsambo02.

Obrigado e até ao próximo artigo!!!

--

--