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
69
ビジオス。iOSとAndroidアプリを作って思ったことなど
kobabiz
0
250
ビジオス。ノンプログラマーが、iOSとAndroidアプリを作って思ったこと
kobabiz
0
230
Other Decks in Programming
See All in Programming
Webプラットフォームで議論されているセキュリティ課題 / Security issues being discussed on Web Platforms
petamoriken
0
240
AI時代に学ぶ 好きなルール 嫌いなルール Linter編
shorty5121
0
880
Building an Out-of-Order CPU
latte72
1
720
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
170
[GoCon2026] When Goroutines Are Not Enough: Runtime Locality in High-Throughput Go
takehaya
4
580
XHTMLが残したもの
yosuke_furukawa
PRO
2
440
DynamoDBの基礎を振り返りながらベクトル検索機能を理解する
musan
3
270
PHPプロジェクトの結合バランスを可視化する #php_night
kajitack
0
230
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
210
MIZARU@SPAJAM2026 第二回予選
1901drama
0
110
Hello, Hiroshima Geospatial Data! — Exploring DoboX with Python
ra0kley
0
180
Can LLMs Replicate 4 Years of Compose Migration? Exploring the boundaries of automation with 279 XML files from a real product
makun
0
130
Featured
See All Featured
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
400
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
370
How to train your dragon (web standard)
notwaldorf
97
6.8k
Raft: Consensus for Rubyists
vanstee
141
7.7k
30 Presentation Tips
portentint
PRO
1
390
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
A Tale of Four Properties
chriscoyier
163
24k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
370
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ͷํͱɺΘͨ͠ͱɻ Ոܭͱใൃ৴Λ ݟ͍ͨ͠ํɺͥͻʂ