Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
about_flutter.pdf
Search
glassmonenkey
April 12, 2020
Technology
2
470
about_flutter.pdf
Flutterの特徴の紹介。
glassmonenkey
April 12, 2020
Tweet
Share
More Decks by glassmonenkey
See All by glassmonenkey
パッケージ管理ツール Ryeへの旅路
nagano
0
230
PHPerにとってのWebAssemblyの可能性
nagano
0
1.1k
PHPをブラウザで動かす技術
nagano
0
2k
PHPとWebAssembly
nagano
8
4.2k
アジャイルで始める データ分析基盤構築
nagano
1
2.9k
Goで始めるTDD
nagano
1
2.6k
Python製の姓名分割 ライブラリをGoに移植した話
nagano
0
1.1k
PHPとGraphQL
nagano
3
4.9k
BASEの資金調達サービスを New Relicで楽に パフォーマンス改善できた話
nagano
0
1.3k
Other Decks in Technology
See All in Technology
今年のRubyKaigiはProfiler Year🤘
osyoyu
0
170
VSCodeの拡張機能を作っている話
ebarakazuhiro
1
530
Além do else! Categorizando Pokemóns com Pattern Matching no JavaScript
wmsbill
0
640
Meta Quest 3 で動く桜マシマシ WebXR アプリを IBM Cloud Code Engine と Babylon.js で作った話
1ftseabass
PRO
0
120
LayerXにおけるLLMプロダクト開発の今までとこれから
layerx
PRO
1
370
MLOpsの「壁」を乗り越える、LINEヤフーの Data Quality as Code
lycorptech_jp
PRO
5
530
On Your Data を超えていく!
hirotomotaguchi
2
690
競技としてのKaggle、役に立つKaggle
yu4u
3
1.8k
DevOpsメトリクスとアウトカムの接続にトライ!開発プロセスを通して計測できるメトリクスの活用方法
ham0215
2
240
KubeConにproposalを送りたい人へのアドバイス
sat
PRO
3
260
APIファーストなプロダクトマネジメントの実践 〜SaaSus Platformでの例〜 / "Practicing API-First Product Management - An Example with SaaSus Platform
oztick139
0
110
いつか使うかも貯金してたらめちゃめちゃ機能が増えてた話
riyaamemiya
0
290
Featured
See All Featured
Being A Developer After 40
akosma
57
580k
Stop Working from a Prison Cell
hatefulcrawdad
266
19k
Product Roadmaps are Hard
iamctodd
44
9.7k
Done Done
chrislema
178
15k
Adopting Sorbet at Scale
ufuk
68
8.6k
How to train your dragon (web standard)
notwaldorf
73
5.2k
Side Projects
sachag
451
41k
The Art of Programming - Codeland 2020
erikaheidi
42
12k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
Code Review Best Practice
trishagee
55
15k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
7
1k
Transcript
Flutter入門 永野 峻輔
自己紹介 略歴 • サーバーサイド / フロントエンド 4年 • Swift 3ヶ月
• Flutter 3ヶ月 名前 : エターナルフィールド (永野) Twitter: @ glassmonekey
エアプ含みます。 補足などありましたら気軽にご意 見ください
なぜFlutterか? • 宣言的UIの時代 • 学習コスト低い • ホットリロードで幸せな開発者体験 • 次期モバイルOSに採用
Flutterの特徴 • クロスプラットフォーム向け • 宣言的UIフレームワーク • 言語はDart • 2種類のコンパイル
クロスプラットフォーム Android iOS Web β版なのでこれからに 期待
宣言的UIフレームワーク 少ない記述量で高度な表現 https://github.com/flutter/gallery
宣言的UIフレームワーク 独自レンダリングエンジン ネイティブはプラグイン * 基本機能は公式が用意 * 最終奥義 * 厚くなりそうならFlutterは微妙? *
ネイティブ機能をUI描画で使用せず * ネイティブから見ると1枚のビュー * React Nativeとの差別化ポイント
Dartについて • いわゆるAlter JS の1つ ◦ Type Scriptに押され気味だった • Google製
◦ Googleの新モバイルOSで採用 • 新バージョンではnull安全 • JSが書けるならほぼ書ける。 • 詳しくは右記のサイトで検証 https://dartpad.dev/
2種類のコンパイル JIT (Just In Time) AOT (Ahead of Time )
* 差分コンパイル * ホットリロードが速い理由 * 開発用 * ウェブアプリと同じ開発体験 * 事前コンパイル * 本番時に全てネイティブ化 * 本番用 * 高パフォーマンスの理由 厳密にはDartの特徴
エコシステム • ライブラリ関係 ◦ https://pub.dev/ ◦ スターとかgithubの更新状況から使用を検討。 ◦ プラグインの場合はネイティブの実装状況も念の為確認しておいたほうがよい •
静的解析 (Analyzer for dart) ◦ https://pub.dev/packages/analyzer ◦ 設定はFlutter公式のものをコピって始めるのが良さそう ◦ https://github.com/flutter/flutter/blob/master/analysis_options.yaml
個人的所感 • ホットリロードが幸せ ◦ UIの調整がすごく楽。 • Android・iOSのデザインはどちらかに寄せことが吉 ◦ Google系コミュニティなのでMaterialデザインが今は良さそう。 •
純粋なDart系ライブラリの充実が待たれる ◦ ユニットテストでネイティブ依存がある機能のモック化が必須 ◦ Flutter for Webの弊害になりそう。
宣言的UIの時代です。 ぜひFlutterに入門しましょう!! 一緒にOSS貢献始めてみませんか?
参考 基礎から学ぶFlutter https://www.amazon.co.jp/dp/B082XQ81FH/ref=dp-kindle-redirect?_encoding=UTF8&btkr=1 Why Flutter Users Dart https://hackernoon.com/why-flutter-uses-dart-dd635a054ebf