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
Flutter on the Webでアプリを作り、 React/Next.jsの違いを体感する - FlutterKaigi mini Osaka #1 with Mix Leap Study #75
Search
Kanon
June 01, 2024
Technology
3
56
Flutter on the Webでアプリを作り、 React/Next.jsの違いを体感する - FlutterKaigi mini Osaka #1 with Mix Leap Study #75
FlutterKaigi mini Osaka #1 with Mix Leap Study #75 での登壇内容です。
Kanon
June 01, 2024
Tweet
Share
More Decks by Kanon
See All by Kanon
WebサーバーとPHP実行方式を きちんと理解してPHPランタイムを 適切に使い分ける - PHPカンファレンス福岡2024
ysknsid25
2
140
TypeScriptで設定しておきたいオプションを逆引きで紹介する - kansai.ts #7
ysknsid25
1
18
ぼっち・ざ・りもーと! 〜フルリモならオフラインLTへ行け!〜
ysknsid25
1
10
東遊園地近辺のおすすめランチ・カフェ
ysknsid25
1
31
変な先入観を捨てて、 とりあえず関西のLT会で発表してみない?
ysknsid25
1
12
ChatGPT Visionで色々実験したまとめ - Kobe Engineer SakeBash #3 with HACK.BAR
ysknsid25
1
30
Google I/O 2024で発表された Firebase App HostingでNext.jsのSSRを試す
ysknsid25
2
160
Nest.jsを使ってみたら とても開発体験がよかった話 - 関西Node学園 11時限目
ysknsid25
0
28
eslint-plugin-securityを導入して、 低労力で堅牢なコードを作る
ysknsid25
1
74
Other Decks in Technology
See All in Technology
超アナログ中心な印刷会社で「エンジニアリング」を見直す
logica0419
4
150
作りすぎない技術 - API時代の開発努力の在り方について考える / Thinking about the state of development efforts in the API era
yokawasa
4
1.4k
「開発生産性を上げる改善」って儲かるの?に答えられるようにする / Is development productivity profitable?
i35_267
9
1.9k
Startale_Culture_Deck_2024.pdf
startale
0
140
みんなで盛り上げ築くリレーション、日経の新卒エンジニア研修 #chiyoda_tech
nishiuma
1
150
半年かけてPHP5.6からPHP7.4までバージョンアップした苦労と工夫 PHPカンファレンス福岡2024
kechiiin
1
170
生成 AI の評価方法
asei
7
1k
スプリントゴールで価値を駆動しよう
takufujii
0
100
Four Keysだけじゃ足りなくない? 〜俺たちだけのFour Keysを探して〜
rinchsan
2
220
ベイジアンABテストってありなの? / Is Bayesian AB Testing Truly Effective?
ak_iyama
1
480
俺的 Four Keys 解釈
tetsuya28
0
190
タクシーアプリ『GO』におけるプラットフォームエンジニアリングの実践
mot_techtalk
3
1.2k
Featured
See All Featured
Building Your Own Lightsaber
phodgson
101
5.8k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
23
1.5k
Debugging Ruby Performance
tmm1
70
11k
Scaling GitHub
holman
457
140k
Embracing the Ebb and Flow
colly
80
4.3k
Web Components: a chance to create the future
zenorocha
307
41k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
13
1.4k
For a Future-Friendly Web
brad_frost
173
9.1k
Unsuck your backbone
ammeep
664
57k
Visualization
eitanlees
137
14k
We Have a Design System, Now What?
morganepeng
45
6.9k
It's Worth the Effort
3n
180
27k
Transcript
Flutter on the Webでアプリを作り、 React/Next.jsの違いを体感する Copyright © 2023 blessing software.
All Rights Reserved. Illustrated by @amon_mikio Kanon (@samurai_se) #FlutterKaigi mini Osaka
自己紹介 2 Kanon 株式会社 虎の穴ラボ 個人事業 blessing software samurai_se ↓詳しくは↓
• 3次元に嫁が1人います。2次元にはたくさんいます。 • 水瀬いのりライブTで神戸から色んなテックカンファレンスに登壇してる人です • 最近「アイコンみたことある!」と声かけていただける率が増えてて嬉しい • 本業はKtor(Kotlin), Next.jsで副業がLaravel, Nest.js,Next.js Copyright © 2024 blessing software. All Rights Reserved.
3 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio Flutter…?
4 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio 1行も書いたことありません!!
5 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio 気には なっていました
6 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio ということで、今日はFlutterを知るために 初めてDartを書き、LTで登壇します
7 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio ここまで先に資料を作っていて、 この時点ではまだ1行もコードを書いてません。 ここから時間が許す限りコードを書きます ここ作ってるのは登壇のちょうど1週間前
環境構築→初期ページを表示する Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio
command + shift + p 9 Copyright © 2023 blessing
software. All Rights Reserved. Illustrated by @amon_mikio
怒られる 10 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio • SDK入れろ ◦ Download SDKを押す • 入れてもエラー • パス通せと怒られる ◦ といっても→を押してダウ ンロードフォルダを選ぶだ け
改めて 11 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio
改めて 12 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio
改めて 13 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio
きちゃあああああああああ 🎉 14 Copyright © 2023 blessing software. All Rights
Reserved. Illustrated by @amon_mikio
15 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio 無事にFlutter on the Webが動きました!
感想 🗒 16 Copyright © 2023 blessing software. All Rights
Reserved. Illustrated by @amon_mikio • Next.jsでプロジェクト作る場合 ◦ npx create-next-app@latest ◦ 色々コマンドラインで入力 ◦ npm run dev • Flutter on the Webの場合 ◦ GUIでぽちぽちできるので本当の初心者に 優しそう
17 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio 終 制作・著作 ━━━━━ ⓃⒽⓀ
18 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio 冗談です
19 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio これだと流石に味気なさすぎるので もうすこし作り込んでみます
簡単にデモアプリに挑戦 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio
Next.jsで作ったアプリに近いものを作ります 21 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio
コントリビュートしやすいOSSを探すアプリ 22 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio
MVP要件 23 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio 時間がないので UIは雑に作ります 条件も JS固定にします データフェッチ + 表示
必要なパッケージを追加 24 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio
必要なパッケージを追加 25 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio 保存すると 勝手にとってきてく れる これは IntelliJ + gradle を使ってる感
26 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio GitHubへのシークレット情報をどう管理する🤔
Node.jsと同じくdotenvがある 27 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio
この辺の書きっぷりはどの言語でもあまり変わらん 28 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio プロトコルって、 偉大だ
UI側で初期状態を作る 29 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio この Stateful,Stateless っていうのが 宣言的でよい
すると、データfetchには成功したっぽい 🎉 30 Copyright © 2023 blessing software. All Rights
Reserved. Illustrated by @amon_mikio
31 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio ここまで来たら、あとはUIに出すだけ!!
UIをGPT先生が実装 32 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio コンポーネントとか スタイルの当て方 さっぱりだったので ほぼ聞いた
MVP要件を満たしたものが完成 🎉 33 Copyright © 2023 blessing software. All Rights
Reserved. Illustrated by @amon_mikio
せっかくなのでFirebaseへデプロイ 34 Copyright © 2023 blessing software. All Rights Reserved.
Illustrated by @amon_mikio firebase experiments:enable webframeworks firebase init hosting firebase deploy
デプロイ完了 🎉 35 Copyright © 2023 blessing software. All Rights
Reserved. Illustrated by @amon_mikio ここまで初心者でも 2時間くらいで できました 🎉 https://flutter-demo-ac 950.web.app/
まとめ Next.jsに比べてよかったところ 36 • 初期の環境構築がGUIで出来てやさしい • ライブラリのインストールも気が利く • 意外とデータfecthなどUI以外はTypeScriptで書く のと大差ない
• UIが状態を持つ・持たないが宣言的なのは(個人 的には)わかりやすい • 単にコードを書いてればモバイルのソレも出来上 がるのはタイパがいい Copyright © 2023 blessing software. All Rights Reserved. Illustrated by @amon_mikio
まとめ Next.jsに比べて難しいところ 37 • UIを作るのがめちゃくちゃ難しく感じる ◦ ほぼGPT先生に書いてもらってた ◦ 慣れの問題? ◦
MaterialUIなんかも苦手(恐れずにいうなら嫌い) • 基本的にTailwind CSS信者なので、設計されたス タイル(CSSのクラス)を指定してある程度好きに スタイルを書き換えたい Copyright © 2023 blessing software. All Rights Reserved. Illustrated by @amon_mikio
38 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio 📢 最後に宣伝だけ 🙏 オフラインLT会を 神戸で開催します! オンラインでも毎朝もくもく会 してます!
39 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio 📢 最後に宣伝だけ 🙏 PHP以外の話も ウェルカムです!! Flutterの話もしにきて ください!
40 Copyright © 2023 blessing software. All Rights Reserved. Illustrated
by @amon_mikio ご清聴、あざざました
Copyright © 2023 blessing software. All Rights Reserved. Illustrated by
@amon_mikio おわりに 三ノ宮で待ってます!! samurai_se