Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Flutterのすヽめ
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Yuto
October 04, 2023
Programming
31
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Flutterのすヽめ
社内勉強会用資料
Yuto
October 04, 2023
More Decks by Yuto
See All by Yuto
自分の言葉で伝える
tsukamoto1783
0
4
画像のリサイズ関数の裏側では何が起きている?
tsukamoto1783
0
19
「ラストエリクサー症候群」からの脱却~ 持ってるアイテム温存するだけで眠らせてませんか? ~
tsukamoto1783
0
29
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
310
【超入門】AR 技術の"さわり"だけ学んでみる
tsukamoto1783
0
32
MCPサーバーって結局何ができるの?
tsukamoto1783
0
37
LT会:普段お世話になってるStackTraceと少しだけ向き合ってみる
tsukamoto1783
0
82
初使用の技術スタックで、 ミニマルなアプリケーションを 2日で作る
tsukamoto1783
0
90
アクセシビリティ対応について考えよう
tsukamoto1783
0
34
Other Decks in Programming
See All in Programming
XHTMLが残したもの
yosuke_furukawa
PRO
2
810
From 6 People Classroom Meetup to 100 People Regional Conference / FOSS4G Hiroshima 2026
furukawayasuto
0
210
FreeBSDでZabbixを動かす
kenkino
0
300
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
280
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
410
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
420
個人開発基盤をまるごとCloudflareに引っ越して爆速で総合的体験を向上させた話
tinykitten
0
190
AIは賢い。でも実行環境は? CLIおじさんがAI時代に伝えたいこと ~ CLIおじさんがAI時代に伝えたいこと ~
curekoshimizu
1
240
Family mrubyの進捗
kishima
1
120
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
320
Webの地図
yosuke_furukawa
PRO
6
4.6k
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
1
300
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
510
[RailsConf 2023] Rails as a piece of cake
palkan
59
7k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
We Have a Design System, Now What?
morganepeng
55
8.3k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
410
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
810
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
600
Docker and Python
trallard
47
4.2k
Transcript
Flutterのすゝめ 〜 新規モバイルアプリ開発 ≒ Flutter !? 〜 社内勉強会 2023/10/4
Flutterのすゝめ 〜 新規モバイルアプリ開発 ≒ Flutter !? 〜 社内勉強会 勉強会を実施する意図 •
勉強会で話すために内容整理することで、自身の理解が深まる。 • 間違っている部分があれば指摘いただけ認識修正できる。 • 他の人の考えや意見が得れるきっかけとなり、新たな気づきが得れる。 はじめに • 私はFlutterを主で開発している身なので、贔屓目に記載がある可能性があります。 • ここで言う「ネイティブ言語」とは、swift, kotolinのことを指します • コメント、質問、補足、指摘修正、ガヤ、等々ありましたらSlackのスレッドに書き込んでくれたら確認しま す。喜びます。(口頭でもOK)
目次 • Flutterとは? • Flutterの特徴 • 「Flutter」 vs 「React Native」
• Flutterの課題
目次 • Flutterとは? • Flutterの特徴 • 「Flutter」 vs 「React Native」
• Flutterの課題
Flutterとは? • Flutter(フラッター)とは、2018年にGoogleが正式リリースした、オープンソース のフレームワーク • 使用言語はDrat(Google製) • JavaScriptの代替言語として2011年にGoogleからリリース • クロスプラットフォーム
• iOSとAndroidの双方に対応したスマホアプリや、Webアプリ、 macOS/Windows/Linuxのクライアントアプリを同時に開発することができる
Flutterを使用している企業例 • Alibaba, BMW, Google, etc. • TOYOTA, CyberAgent, DNA,
etc.
目次 • Flutterとは? • Flutterの特徴 • 「Flutter」 vs 「React Native」
• Flutterの課題
Flutterの特徴 • iOSとAndroidの双方を同時に開発可能(クロスプラットフォーム) 単純工数が1/2に。 • ホットリロード機能 プログラムを変更したらすぐにUIに変更がかかるので、いちいち再buildする必要が ない。開発体験◎ • 必要なバックエンド周りは全てモバイル特化のミドルウェア(Firebase)で完結
Push通知、DBのデータは全てリアルタイム更新可能、cloud functions, Auth, etc. • 標準でマテリアルデザイン(Material3)に対応 • Material3 demo app • FigmaでFlutter向きのアプリデザインを簡単に作成する方法 • etc.
ホットリロード demo
None
目次 • Flutterとは? • Flutterの特徴 • 「Flutter」 vs 「React Native」
• Flutterの課題
「Flutter」 vs 「React Native」 • Flutter: • Google • ”一回書けば、全て(様々)のプラットフォームで動く”
• React Native • Facebook • “Write once, Run anywhere” ではなく、“Learn once, Write anywhere” • ≒”Reactを一度学べば、どのプラットフォームでも動く” 参考:React Native: Bringing modern web techniques to mobile / This is working
どちらの方が優れているとかではないが、トレンド的にはFlutterの方が勢いがある印象
備考:ネイティブ言語との比較
目次 • Flutterとは? • Flutterの特徴 • 「Flutter」 vs 「React Native」
• Flutterの課題
Flutterの課題 • 比較的新しいフレームワークで、アップデートが活発でキャッチアップが大変 • カメラやBluetoothなどデバイス固有機能や、最新のデバイス機能は苦手 • 人材確保が困難
Flutterの課題 • 比較的新しいフレームワークで、アップデートが活発でキャッチアップが大変 • カメラやBluetoothなどデバイス固有機能や、最新のデバイス機能は苦手 • 人材確保が困難
アップデートが活発でキャッチアップが大変 • 月1〜2ぐらいの頻度でバージョンアップが行われている 参考:Flutter SDK releases
Flutterの課題 • 比較的新しいフレームワークで、アップデートが活発でキャッチアップが大変 • カメラやBluetoothなどデバイス固有機能や、最新のデバイス機能は苦手 • 人材確保が困難
デバイス固有機能はやや苦手 • デバイスの最新機能 • ネイティブ言語(swift, kotlin)での実装が落ち着いてからFlutterへ持ち込まれる。 • ex.) FaceID, ワイヤレス充電
• カメラ(VR, AR)やBluetooth連携、など • 基本的な使用であればパッケージで対応できるが、細かい制御や特殊な仕様だと厳 しい印象 • 結局パッケージの中身は内部的にネイティブ言語を呼び出していることが多いの で、自作で機能をネイティブ言語で実装する必要あり。 • ≒逆に考えると、Flutterアプリで欲しい機能があればネイティブ言語で実装がで きるということ!
Flutterの課題 • 比較的新しいフレームワークで、アップデートが活発でキャッチアップが大変 • カメラやBluetoothなどデバイス固有機能や、最新のデバイス機能は苦手 • 人材確保が困難
人材確保が困難 • 新しいフレームワークなので、実務系経験者が少ない • そもそも求人数が少ない • Flutterだけの経験だけでなく、ネイティブ言語での開発経験が求められがち
Greenでの検索結果 検索キーワード 検索結果 Java 1684企業 5583求人 Python 1479企業 4449求人 Aws
2177企業 8248求人 Typescript 990企業 2620求人 React 1160企業 3154求人 Swift 597企業 1555求人 Kotlin 548企業 1583求人 Flutter 287企業 734求人 React Native 133企業 279求人 • Flutterの求人数は、Java求人の約 1 / 7 • 求人内容のほとんどが以下のどれかの印象 • ネイティブ言語で作られているアプリのFlutterリプレイス 人材 • 今後社内でFlutterを進めていくためのFlutterテックリード 募集 • 数名のスタートアップ企業 • どの条件でも基本はネイティブ言語の開発経験は重要視
RIZAPの事例 引用:https://fortee.jp/iosdc-japan-2023/proposal/4a8ef72b-9c0c-40ef-8e8f-084fd0199c49
まとめ • Flutterとは? • iOSとandroidを同時に開発できるGoogle製のクロスプラットフォーム • Flutterの特徴 • iOSとandroidを同時に開発できる •
開発体験が良い • バックエンドツールも充実 • 標準デザインはMaterial3 • Flutter vs React Native • 思想の違いです。どちらもクロスプラットフォームとして優秀 • Google Trends的にはFlutterの方やや人気そう • Flutterの課題 • キャッチアップ大変 • デバイス固有の機能は苦手 → 必要であればネイティブ言語の実装が必要 • 人材確保が困難