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
63
ビジオス。iOSとAndroidアプリを作って思ったことなど
kobabiz
0
240
ビジオス。ノンプログラマーが、iOSとAndroidアプリを作って思ったこと
kobabiz
0
220
Other Decks in Programming
See All in Programming
New "Type" system on PicoRuby
pocke
1
470
AutonomyとControlのあいだ:Graflowで記述するAIエージェント協調
myui
0
110
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
2
5.2k
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.2k
The Arts and Crafts of Work in the AI Era — Toward Mastery in Software Development
kuranuki
1
720
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.5k
AIエージェントの隔離技術の徹底比較
kawayu
0
460
Modding RubyKaigi for Myself
yui_knk
0
890
CSC307 Lecture 17
javiergs
PRO
0
310
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
250
3Dシーンの圧縮
fadis
1
650
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
2.8k
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
71
40k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
Ruling the World: When Life Gets Gamed
codingconduct
0
250
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
320
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Why Our Code Smells
bkeepers
PRO
340
58k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
300
Mind Mapping
helmedeiros
PRO
1
230
Balancing Empowerment & Direction
lara
6
1.1k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
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ͷํͱɺΘͨ͠ͱɻ Ոܭͱใൃ৴Λ ݟ͍ͨ͠ํɺͥͻʂ