SlideShare a Scribd company logo
1 of 49
Wiliam Luiz Buzatto
wiliambuzatto@gmail.com
medium.com/@wiliambuzatto
github.com/wiliambuzatto
Aplicativos rápidos, modernos e bonitos
para Android e iOS
Ah, Sério??
Aplicativos rápidos, modernos e bonitos
para Android e iOS
Por que o Flutter é diferente?
O que há de incrível sobre o Flutter?
Mobile é difícil
• Lento (e caro)
• Design encantador é difícil
• Diversidade entre plataformas pode complicar
• Dois (ou mais) times
Familiar?
Deve haver um forma melhor!
• Desenvolvimento deveria ser rápido
• Customizar deveria ser fácil
• Confiar no que os usuário veem, é o que você vê.
• Criar uma vez, elegante.
Desenvolvimento fluído
• Rápido e fácil, bom ferramental
Flexível
• Nunca diga não ao seu designer
UI Fiel
• Parecer incrível na mão do usuário (look & feel)
Breve história
sobre
desenvolvimento
mobile
OEM SDKs
(Fabricante original do kit desenvolvimento)
WebViews
Reactive Views
A ponte
Seu App
Reino
Javascript
Serviços,
eventos,
Widgets
Reino
Nativo
Troca de contexto
E o Flutter?
Widgets!
O que é um Widget?
Widgets
• Aparência é primordial (look and feel)
• Devem ser rápidos
• Extensível e customizável
Flutter
WIDGETS
Tudo é um
Widget • Scrolling
• Themes
• Navigation
• Applications
• Crie novos tipos de widgets
Flutter possui seus próprios
Widgets!
• Crie o layout na sua cabeça
• Widgets são simples e rápidos
• Tudo é um Widget
• Customização e extensibilidade total
Layout widgets (para elementos únicos)
Padding Center Align
https://flutter.io/widgets/layout/
Layout widgets (múltiplos elementos)
Row Column Stack
https://flutter.io/widgets/layout/
ListView
Grid, flow, table ...
Layout na sua cabeça
Exemplos
Reactive Views
• Reactive web Views, introduziram o
Virtual DOM
• Virtual DOM é imutável
• Reconstruído para cada quadro
(frame)
Virtual DOM (web) Plataforma
Virtual Widget (mobile) Plataforma
Widgets
•Stateless
•Statefull
Como o
Flutter Faz
tudo isso?
Dart
• Rápido para desenvolvimento (JIT) e para
produção (AOT)
• Tree shaking compiler (remoção de código
morto)
• Generation garbage collection
• Sintaxe Familiar, fácil de utilizar e aprender
Compatibilidade(?)
• Não precisa de bibliotecas de compatibilidade!
• Android Jelly Bean+, iOS 8+
• Novos Widgets?
• Widgets Atualizados?
Ferramental
Hot Reload!
Demo!
Showcase
O que há de incrível sobre o Flutter?
 Reactive Views, sem ponte javascript
 Rápido e suave, compila AOT para código nativo.
 Controle dos Widgets e Layout pelo desenvolvedor.
 Widgets bonitos e customizáveis.
 Ferramental fantástico, stateful hot reload.
 Mais performático, mais compatível.
 Customização, possibilita múltiplas plataformas.
Desafio!
 Reactive Views, sem ponte javascript
 Rápido e suave, compila AOT para código nativo.
 Controle dos Widgets e Layout pelo desenvolvedor.
 Widgets bonitos e customizáveis.
 Ferramental fantástico, stateful hot reload.
 Mais performático, mais compatível.
 Customização, possibilita múltiplas plataformas.
O que de incrível sobre o
Flutter?
@wiliambuzatto
wiliambuzatto@gmail.com
medium.com/@wiliambuzatto
Referências
• https://hackernoon.com/whats-revolutionary-about-flutter-946915b09514
• https://www.youtube.com/watch?v=n3FLHWF7UgM
• https://www.youtube.com/watch?v=VUiVkDpikDI&t=304s
• https://proandroiddev.com/flutter-from-zero-to-comfortable-6b1d6b2d20e
• https://github.com/flutter/flutter
• https://flutter.io/
• https://hackernoon.com/whats-revolutionary-about-flutter-946915b09514
• https://www.youtube.com/watch?v=RS36gBEp8OI
• https://www.youtube.com/watch?v=rXiWXWV1Ht4
• https://br.udacity.com/course/build-native-mobile-apps-with-flutter--ud905
• https://medium.com/flutter-io/announcing-flutter-beta-1-build-beautiful-native-apps-dc142aea74c0
• https://hackernoon.com/why-flutter-uses-dart-dd635a054ebf
• https://hackernoon.com/flutter-5-reasons-why-you-may-love-it-55021fdbf1aa

More Related Content

What's hot

Getting started with flutter
Getting started with flutterGetting started with flutter
Getting started with flutterrihannakedy
 
Introduction to Flutter
Introduction to FlutterIntroduction to Flutter
Introduction to FlutterApoorv Pandey
 
The magic of flutter
The magic of flutterThe magic of flutter
The magic of flutterShady Selim
 
Seminário - Linguagem Dart: Structured web apps
Seminário - Linguagem Dart: Structured web appsSeminário - Linguagem Dart: Structured web apps
Seminário - Linguagem Dart: Structured web appsGiancarlo Silva
 
Flutter session 01
Flutter session 01Flutter session 01
Flutter session 01DSC IEM
 
Introduction to flutter's basic concepts
Introduction to flutter's basic conceptsIntroduction to flutter's basic concepts
Introduction to flutter's basic conceptsKumaresh Chandra Baruri
 
Introduction to Flutter - truly crossplatform, amazingly fast
Introduction to Flutter - truly crossplatform, amazingly fastIntroduction to Flutter - truly crossplatform, amazingly fast
Introduction to Flutter - truly crossplatform, amazingly fastBartosz Kosarzycki
 
Introdução a dispositivos móveis.
Introdução a dispositivos móveis.Introdução a dispositivos móveis.
Introdução a dispositivos móveis.Eduardo Lagares
 
Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101Arif Amirani
 
Introdução ao Android
Introdução ao AndroidIntrodução ao Android
Introdução ao AndroidJanynne Gomes
 
Building beautiful apps using google flutter
Building beautiful apps using google flutterBuilding beautiful apps using google flutter
Building beautiful apps using google flutterAhmed Abu Eldahab
 
What is flutter and why should i care?
What is flutter and why should i care?What is flutter and why should i care?
What is flutter and why should i care?Sergi Martínez
 

What's hot (20)

Getting started with flutter
Getting started with flutterGetting started with flutter
Getting started with flutter
 
Introduction to Flutter
Introduction to FlutterIntroduction to Flutter
Introduction to Flutter
 
Flutter
FlutterFlutter
Flutter
 
The magic of flutter
The magic of flutterThe magic of flutter
The magic of flutter
 
Seminário - Linguagem Dart: Structured web apps
Seminário - Linguagem Dart: Structured web appsSeminário - Linguagem Dart: Structured web apps
Seminário - Linguagem Dart: Structured web apps
 
Flutter
FlutterFlutter
Flutter
 
Flutter
FlutterFlutter
Flutter
 
Flutter session 01
Flutter session 01Flutter session 01
Flutter session 01
 
Flutter Bootcamp
Flutter BootcampFlutter Bootcamp
Flutter Bootcamp
 
Flutter
FlutterFlutter
Flutter
 
Introduction to flutter's basic concepts
Introduction to flutter's basic conceptsIntroduction to flutter's basic concepts
Introduction to flutter's basic concepts
 
Flutter introduction
Flutter introductionFlutter introduction
Flutter introduction
 
Introduction to Flutter - truly crossplatform, amazingly fast
Introduction to Flutter - truly crossplatform, amazingly fastIntroduction to Flutter - truly crossplatform, amazingly fast
Introduction to Flutter - truly crossplatform, amazingly fast
 
Flutter introduction
Flutter introductionFlutter introduction
Flutter introduction
 
Introdução a dispositivos móveis.
Introdução a dispositivos móveis.Introdução a dispositivos móveis.
Introdução a dispositivos móveis.
 
Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101
 
Introdução ao Android
Introdução ao AndroidIntrodução ao Android
Introdução ao Android
 
Building beautiful apps using google flutter
Building beautiful apps using google flutterBuilding beautiful apps using google flutter
Building beautiful apps using google flutter
 
What is flutter and why should i care?
What is flutter and why should i care?What is flutter and why should i care?
What is flutter and why should i care?
 
Flutter
Flutter Flutter
Flutter
 

Similar to O que há de incrível sobre o Flutter

Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013
Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013
Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013javamanrj
 
Mobile Apps Cross-Platform
Mobile Apps Cross-PlatformMobile Apps Cross-Platform
Mobile Apps Cross-PlatformAdriel Café
 
RIA e Flex - Dando formas à Inovação
RIA e Flex - Dando formas à InovaçãoRIA e Flex - Dando formas à Inovação
RIA e Flex - Dando formas à InovaçãoLeonardo Braga
 
Php Conference 2013 (Resumão)
Php Conference 2013 (Resumão)Php Conference 2013 (Resumão)
Php Conference 2013 (Resumão)Gustavo Pereira
 
Ux for Developers - Build Better Products
Ux for Developers - Build Better ProductsUx for Developers - Build Better Products
Ux for Developers - Build Better ProductsPedro Marques
 
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...Marcelo Marques Gonçalves
 
Apresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo SitesApresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo Sitesthiagolima
 
Memorias das trincheiras
Memorias das trincheirasMemorias das trincheiras
Memorias das trincheirasElton Minetto
 
Marketing digital tecnologia da informação
Marketing digital   tecnologia da informaçãoMarketing digital   tecnologia da informação
Marketing digital tecnologia da informaçãoAna Paula Coelho Barbosa
 
Descomplicando o Android
Descomplicando o AndroidDescomplicando o Android
Descomplicando o AndroidHeider Lopes
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Valmir Justo
 
Win302 daniel semedo_10 motivos para utilizar apache cordova (1)
Win302 daniel semedo_10 motivos para utilizar apache cordova (1)Win302 daniel semedo_10 motivos para utilizar apache cordova (1)
Win302 daniel semedo_10 motivos para utilizar apache cordova (1)Daniel Semedo
 
ArduinoDay 2015 - OpenDevice
ArduinoDay 2015 -  OpenDeviceArduinoDay 2015 -  OpenDevice
ArduinoDay 2015 - OpenDeviceRicardo Rufino
 

Similar to O que há de incrível sobre o Flutter (20)

Ria e Java FX
Ria e Java FXRia e Java FX
Ria e Java FX
 
Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013
Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013
Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013
 
Mobile Apps Cross-Platform
Mobile Apps Cross-PlatformMobile Apps Cross-Platform
Mobile Apps Cross-Platform
 
Zf campus party_2011
Zf campus party_2011Zf campus party_2011
Zf campus party_2011
 
Zf campus party_2011
Zf campus party_2011Zf campus party_2011
Zf campus party_2011
 
RIA e Flex - Dando formas à Inovação
RIA e Flex - Dando formas à InovaçãoRIA e Flex - Dando formas à Inovação
RIA e Flex - Dando formas à Inovação
 
Php Conference 2013 (Resumão)
Php Conference 2013 (Resumão)Php Conference 2013 (Resumão)
Php Conference 2013 (Resumão)
 
Titanium appacelerator
Titanium appaceleratorTitanium appacelerator
Titanium appacelerator
 
Ux for Developers - Build Better Products
Ux for Developers - Build Better ProductsUx for Developers - Build Better Products
Ux for Developers - Build Better Products
 
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...
Aplicativos hibridos-com-ionic-voce-tambem-pode-comecar-a-desenvolver-agora-t...
 
Apresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo SitesApresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo Sites
 
Minicurso Intel XDK
Minicurso Intel XDKMinicurso Intel XDK
Minicurso Intel XDK
 
Minicurso Intel XDK
Minicurso Intel XDKMinicurso Intel XDK
Minicurso Intel XDK
 
Memorias das trincheiras
Memorias das trincheirasMemorias das trincheiras
Memorias das trincheiras
 
Marketing digital tecnologia da informação
Marketing digital   tecnologia da informaçãoMarketing digital   tecnologia da informação
Marketing digital tecnologia da informação
 
Descomplicando o Android
Descomplicando o AndroidDescomplicando o Android
Descomplicando o Android
 
Flutter
FlutterFlutter
Flutter
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.
 
Win302 daniel semedo_10 motivos para utilizar apache cordova (1)
Win302 daniel semedo_10 motivos para utilizar apache cordova (1)Win302 daniel semedo_10 motivos para utilizar apache cordova (1)
Win302 daniel semedo_10 motivos para utilizar apache cordova (1)
 
ArduinoDay 2015 - OpenDevice
ArduinoDay 2015 -  OpenDeviceArduinoDay 2015 -  OpenDevice
ArduinoDay 2015 - OpenDevice
 

O que há de incrível sobre o Flutter

Editor's Notes

  1. iOS SDK 2008 – Google SD 2009
  2. Baseados em JS, Apache Cordova, PhoneGap, Ionic.. Antes da Apple liberar o SDK, encorajava a desenvolvimento webapps para iPhone HTML - > Webview
  3. Programação reativa Reactive web frameworks like ReactJS 2015 – RN Widgets chamados frequentemente – 60x durante animações, transições..