Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
한번 쓰고 우려먹는 플러터
Search
Ben
July 27, 2019
Programming
0
160
한번 쓰고 우려먹는 플러터
Ben
July 27, 2019
Tweet
Share
More Decks by Ben
See All by Ben
2019년의 플러터: 모바일을 넘어
justive
1
40
Other Decks in Programming
See All in Programming
dnx で実行できるコマンド、作ってみました
tomohisa
0
120
「文字列→日付」の落とし穴 〜Ruby Date.parseの意外な挙動〜
sg4k0
0
340
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
1.3k
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
110
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
2.1k
20251127_ぼっちのための懇親会対策会議
kokamoto01_metaps
2
370
Herb to ReActionView: A New Foundation for the View Layer @ San Francisco Ruby Conference 2025
marcoroth
0
230
CSC305 Lecture 17
javiergs
PRO
0
230
30分でDoctrineの仕組みと使い方を完全にマスターする / phpconkagawa 2025 Doctrine
ttskch
3
670
社内オペレーション改善のためのTypeScript / TSKaigi Hokuriku 2025
dachi023
1
300
乱雑なコードの整理から学ぶ設計の初歩
masuda220
PRO
32
15k
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
2.8k
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Building Adaptive Systems
keathley
44
2.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
For a Future-Friendly Web
brad_frost
180
10k
Faster Mobile Websites
deanohume
310
31k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
A better future with KSS
kneath
240
18k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Documentation Writing (for coders)
carmenintech
76
5.2k
BBQ
matthewcrist
89
9.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Transcript
ೠߣॳҊ ۰ݡח ۞ఠ ٘݃ੋ٘() ӣ࢚
ӣ࢚ ࣽୌೱҮ ੌ߈ਗ ஹೊఠ Ӓېझ ҕ ٘݃ੋ٘() SW োҳࣗ োҳਗ
JUSTIVE Google I/O Extended Pangyo Flutter in 2019: Beyond Mobile
[email protected]
Google I/O Extended Suwon 2019֙ ۞ఠ: ݽ߄ੌਸ ֈয Unity / Electron / Flutter Vue.js /Physics Simulation / Android etc..
۞ఠۆ Dart ҳӖ Fuchsia ۽झ ۖಬ Hot reload Hot restart
۞ఠۆ? Flutter is Google’s portable UI toolkit for building beautiful,
natively-compiled applications for mobile, web, and desktop from a single codebase.
Native Performance Theming Widgets Rendering Animation Painting Gestures Foundation Framework(Dart)
Engine(C++) Skia Dart VM Text Android/iOS runner Hardware
Stateful hot reload
Material Design Material Theming Cupertino Design
ࢶ UI b.setColor(red) b.clearChildren() ViewC c3 = new ViewC(...) b.add(c3)
return ViewB( color: red, child: ViewC(...), ) Imperative style Declarative style
None
নೠ ѐߊ ജ҃ Windows MacOS Linux ChromeOS Android Studio Visual
Studio Code IntelliJ
Dart?
Dart ݽ؍ - ݣ౭ ಁ۞ য JavaScript / Java /
C# যܳ ೧ࠁ࣑ݶ য࢝ೞ ঋਸ য Flutterח UIࠗఠ ۽ө Dart۽ ҳࢿ
Dart Hello world main( ) { var words = ['Hello',
'world']; print('${words.join(", ")}!'); }
Dart ёೱ ېझ ё ࢚ࣘ ङച ੋఠಕझ ೣࣻഋ ۽Ӓې߁
ۈ Ҋରೣࣻ ۽ઉ ఋੑ ఋੑ Ѩࢎ ઁ֎ܼ झ݀ য ಞউೣ ఋੑ য উх
۽झ ۖಬ
None
Android iOS Web Raspberry pi(Android Things) Windows MacOS Linux …
Android iOS Web Raspberry pi(Android Things) Windows MacOS Linux …
Android iOS Web Raspberry pi(Android Things) Windows MacOS Linux …
Flutter for web
Themeing Widgets Rendering Animation Painting Gestures Foundation Framework(Dart) Browser(C++, JS)
Canvas DOM Skia ূਸ ܖ ঋҊ DOM / HTML5 Canvasܳ ਊೞৈ ۪؊݂ (HTML/CSS -> Canvas (fallback) Dart2js compiler Your code JS Engine
Flutter for web https://flutter-web-demo.firebaseapp.com/#/ >Flutter : new web project >pub
global activate stagehand >pub global activate webdev
mobile web https://github.com/flutter/flutter https://github.com/flutter/flutter_web
dependencies: flutter: sdk: flutter … dependencies: flutter_web: flutter_web_ui: … pubspec.yaml
mobileRepo/lib -> webRepo/lib
import 'package:flutter/material.dart'; import ‘package:flutter_web/material.dart’;
for Material Icons /web/assets/FontManifest.json [ { “family:”MaterialIcons”, “fonts”:[ { “asset”:”https://fonts.gstatic.com/s/materialicons/v42/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2"
} ] } ]
main() async{ await ui.webOnlyInitializePlatform( assetManager: engine.AssetManager( assetDir: “asset_dir” ) );
app.main(); }
Animation Network Gesture Route
None
Adaptive Components э ਗٜ۽ ܲ ࠙ܳ ٜ݅ӝ +
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet image title subtitle Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
Adaptive Components झѱ౭ܳ ೖೞࣁਃ styles : color / padding /
alignment … -> э ਤઇ layouts : column / stack … -> ܲ ਤઇ
Adaptive Components MediaQuery.of(context). aspectRatio width height
None
Interactions ::hover
Interactions Listener onPointerEnter onPointerExit onPointerDown onPointerUp onPointerMove
Interactions RawKeyboardListener RawKeyboardListener( focusNode: _focusNode, onKey: (RawKeyEvent event){ … }
)
None
Q & A
[email protected]
хࢎפ