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でアプリを作る?
Search
こばやしただあき
August 28, 2019
Programming
390
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Flutterでアプリを作る?
こばやしただあき
August 28, 2019
More Decks by こばやしただあき
See All by こばやしただあき
Firebaseを使って私が作った3つのアプリ
kobabiz
0
66
ビジオス。iOSとAndroidアプリを作って思ったことなど
kobabiz
0
250
ビジオス。ノンプログラマーが、iOSとAndroidアプリを作って思ったこと
kobabiz
0
230
Other Decks in Programming
See All in Programming
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
350
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
320
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
660
今さら聞けない .NET CLI
htkym
0
190
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
480
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
470
the container ship “Apple Silicon”@WWDC26 Recap -Japan-\(region).swift
shingangan
0
120
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
150
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.3k
関東Kaggler会_NVIDIA_Nemotron_コンペ_振り返り
rick_ds
0
540
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
590
VibeCodingからAgenticWorkflowへ
starfish719
0
400
Featured
See All Featured
How Software Deployment tools have changed in the past 20 years
geshan
1
34k
Faster Mobile Websites
deanohume
310
32k
Designing for humans not robots
tammielis
254
26k
Designing Experiences People Love
moore
143
24k
BBQ
matthewcrist
89
10k
Practical Orchestrator
shlominoach
191
12k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
200
A designer walks into a library…
pauljervisheath
211
24k
Mobile First: as difficult as doing things right
swwweet
225
10k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
370
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.8k
Transcript
'MVUUFSͰΞϓϦΛ ࡞Δʁ ͖ͨͩ͋͜͠
ࣗݾհ ͖ͨͩ͋͜͠!LPCBCJ[ ΣϒίϯαϧɺίʔνɻʢϓϩάϥϚʔͰͳ͍ʣ 4XJGUྺɺࠓ͔Β "OESPJEɺ݄͙Β͍͔Β 5XJUUFSɿ!LPCBCJ[ 'BDFCPPLɿLPCB ʢ͖ͨͩ͋͜͠ʣ ϑΥϩʔͳͲɺ͓ؾܰʹɻ
ࠓͷ༰ ɾ࠷ۙ࡞ͬͨΞϓϦͷհ ɾ'MVUUFSΛࢼͯ͠Έͨ ɾ'MVUUFSͷײͳͲ
࠷ۙ࡞ͬͨΞϓϦ w (PBMMJTUʢԁ݄ʣʢ+BWBTDSJQUʴ'JSFCBTFʣ w -JOL5PVDIϒϥβʔʢԁʣʢ4XJGUʣ w ϏδΦεɾϏδωεॻͷΦεεϝ·ͱΊʢແྉʣ J04ʢ4XJGUʣɺ"OESPJEʢ+BWBɺҰ෦,PUMJOʣ
-JOL5PVDIϒϥβʔ J1IPOFɺJ1BE͚ͷϒϥβʔʢԁʣ ͍͍ͣ͢ͳͷͰɺͬͯΈ͍ͯͩ͘͞ɻ
None
σϞ
ϏδΦε ແྉ J1IPOFʢ4XJGUʣɺ"OESPJEΞϓϦʢ+BWB ,PUMJOʣ ϏδωεॻͳͲͷΦεεϝຊΛ·ͱΊ͍ͯΔ ϏδωεॻͳͲʹڵຯ͕͋Δํɺ Πϯετʔϧ͍ͯͩ͘͠͞ɻ
ϏδΦε'JSFCBTF 'JSFTUPSFɿຊͷσʔλ $MPVE.FTTBHJOHɿϓογϡ௨ $SBTIMZTUJDT "ENPC
ϏδΦεΛ࡞ͬͨཧ༝ ϏδωεॻͷϝϧϚΨʮࣝΛνΧϥʹʯ ߸ ˣ ΦεεϝΛ·ͱΊ͔ͨͬͨ ˣ ΞϓϦʹ͠Α͏ʢJ04ɺ"OESPJEʣ
None
σϞ ΞϓϦɺେͨ͜͠ͱ͍ͯ͠ͳ͍Ͱ͕͢ɺ ͷϏδωεॻ͔Β ΦεεϝΛݫબͯ͠·ͱΊͯ͋ΔͷͰɺ ͜ΕΒΛಡΊɺ͋ͱ͋ͱࣄͳͲͰʹཱͭͣͰ͢ɻ
ඪϦετཧ ʮ(PBMMJTUDPNʯ ίʔνΛ͍ͬͯΔͷͰɺඪཧॏཁɻ ͔͠͠ɺඪΛϦετͰཧͰ͖ΔΞϓϦ͕ͳ͍ɻ ͔ͩΒ࡞Γ·ͨ͠ɻ εϚϗͰ͑·͢ɻ̓ؒແྉͳͷͰɺࢼͯ͠Έ͍ͯͩ͘͞ɻ
σϞ
ࠓͷඪΛཱͯͨํʁ
ඪ͕͋Δ͔ͳ͍͔ Γ͍ͨ͜ͱˠඪˠୡˠධՁ ˣ ͞ΒʹΓ͍ͨ͜ͱ͕Ͱ͖Δ Γ͍ͨ͜ͱˠඪ͕ͳ͍ˠୡ͠ͳ͍ˠධՁ͞Εͳ͍ ˣ Γ͍ͨ͜ͱ͕Ͱ͖ͳ͍ ඪ͕͋Δͱ ඪ͕ͳ͍ͱ
Γ͍ͨ͜ͱΛඪʹ͢Δ ࣮ݱՄೳੑ͕ߴ·Δɻ Կ͔Λୡ͢Δͱɺ ଞͷΓ͍ͨ͜ͱΓ͘͢ͳΔɻ Γ͍ͨ͜ͱΛɺඪʹͯ͠Έ͍ͯͩ͘͞ɻ
J04ͱ"OESPJEΞϓϦΛ ࡞ͬͯ ɾແྉɺΠϯετʔϧͯ͠Β͍͍͢ ɾ༗ྉɺແྉͷͷ̍ఔ ɾJ04ɿ"OESPJEʹɹɿ̎
'MVUUFSΛࢼͯ͠Έͨ ̍ϲ݄΄Ͳɺ͍Ζ͍Ζςετ
'MVUUFS IUUQTqVUUFSEFW 'MVUUFSͷӳޠͷҙຯɺ ʮͨΊ͘ɺڳ༂ΒͤΔʯͱݴͬͨҙຯ (PPHMF͕࡞͍ͬͯΔ
'MVUUFSΛΖ͏ͱࢥͬͨཧ༝ J04ͱ"OESPJEɺਓͰͭ࡞Δͷେม ϋΠϒϦουɺΫϩεϓϥοτϑΥʔϜ Λݕ౼ 8FCɺ.BD࡞Γ͍ͨ ͳ͓͞Βɺਓ։ൃͩͱେมͳͷͰ
ΫϩεϓϥοτϑΥʔϜ։ൃɺ ͍͔ͭ͋͘Δ ɾ$PSEPWBɺJPOJDɿࠓɺ"QBDIFɻ ɹੲ"EPCF͕࡞͍ͬͯͨɻ ɾ3FBDUOBUJWFɿ'BDFCPPL͕࡞͍ͬͯΔɻ ɾ'MVUUFSɿ(PPHMF͕࡞͍ͬͯΔɻ ଞʹɺ9BNBSJOʢ.4ʣɺ/BUJWF4DSJQUͳͲ͋Δ
'MVUUFSΛ৮ͬͯΈͨཧ༝ J04ɺ"OESPJEΛ࡞ΕΔɻ 8FCʹɺ.BDΞϓϦ࡞ΕΔΒ͍͔͠Βɻ 'JSFCBTFɺ(PPHMFͳͷͰ ৽͍͔͠Β
'MVUUFSͷྑ͔ͬͨͱ͜Ζ ˕ͭͰɺJ04"OESPJE࡞ΕΔ ˕ϚςϦΞϧσβΠϯ؆୯ʹͰ͖Δ ˓ϗοτϦϩʔυʢϏϧυ͕͋·Γඞཁͳ͍ʣ ˓%BSUɺͦ͜·Ͱ͘͠ͳ͍ɹ+BWBTDSJQUͬΆ͍ ʢOVMM҆શͰͳ͍͚Ͳʣ ˓ΞϓϦͷతʹɺ͘ͳ͍
'MVUUFSΠϚΠνͳͱ͜Ζ ºใ͕গͳ͍ɻجຊతʹӳޠɻ ɹӳޠͰগͳ͍͚ΕͲɺຊޠͩͱͬͱগͳ͍ɻ ɹͨͩ͠ɺ࠷ۙɺϢʔβʔͷΓ্͕Γ͋Δɻ ˚ࡉ͔͍͜ͱΛΖ͏ͱ͢Δͱɺ ɹ4XJGU,PUMJO͕ඞཁʹͳΔɻɹ"1*Ͱͭͳ͛Δ ˚ωετ͕ਂ͘ͳΓ͍͢ɻɹϑΝΠϧΛ͚Δ ˚ίʔυͰॻ͍͍ͯ͘
ωετ͕ਂ͘ͳΔ // Flutter class CustomCard extends StatelessWidget { CustomCard({@required this.index,
@required this.onPress}); final index; final Function onPress; @override Widget build(BuildContext context) { return Card( child: Column( children: <Widget>[ Text('Card $index'), FlatButton( child: const Text('Press'), onPressed: this.onPress, ), ], ) ); } } ... // Usage CustomCard( index: index, onPress: () { print('Card $index'); }, ) ..
͜Μͳਓɺ༻్ʹྑͦ͞͏ w J04ɺ"OESPJEɺͲͪΒ͔͔ͬͨ͜͠ͱ͕ͳ͍ਓ w ϓϩτλΠϓ࡞ w ৽͍͠ͷ͕͖ͳਓ ϓϩάϥϚʔ͡Όͳ͍ਓʹɺݱ࣌Ͱਏ͍ɻ ใɺαϯϓϧ͕গͳ͍͔Β ޙʹɺใ૿͑ͯɺͬͱྑ͘ͳ͍ͬͯΔ͔ɻ
ݸਓతʹɺอཹ J04ɺ"OESPJEͳͲෳͷ04ͷ։ൃɺ ϋΠϒϦουɺΫϩεϓϥοτϑΥʔϜ։ൃ Έͳ͞ΜɺͲ͏͍ͯ͠·͔͢ʁ
ݸਓతʹ $PSEPWB͔3FBDUOBUJWF͔ɻ ͘͠ɺఘΊͯɺ4XJGUɺ,PUMJO͔ͳ
࣍ʹ࡞Γ͍ͨͷ w4/4ͬΆ͍ͷ wϒϩάʹؔ͢Δͷ Ұॹʹ࡞ͬͯ͘ΕΔͱ͍͏ਓ͕͍Εɺͳ͋ɻ ͱࢥ͏ͷͰɺڵຯ͕͋ΔํɺͳͲΛ͔͚ͯ ͍ͩ͘͞ɻ
͖ͨͩ͋͜͠!LPCBCJ[ IUUQTXXXCJ[QOFUDPNLPCBCJ[ 5XJUUFSɿ!LPCBCJ[ 'BDFCPPLɿLPCB ʢ͖ͨͩ͋͜͠ʣ ϑΥϩʔͳͲɺ͓ؾܰʹɻ
ϫʔΫγϣοϓΛ։࠵ ʢʣʙ ʮ͓ۚʯͱʮΞτϓοτʯͷϫʔΫγϣοϓ '1ͷํͱɺΘͨ͠ͱɻ Ոܭͱใൃ৴Λ ݟ͍ͨ͠ํɺͥͻʂ