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
GraphQLとGigaViewer for Apps
Search
Nabe
September 19, 2024
Programming
4
1.2k
GraphQLとGigaViewer for Apps
はてなのモバイル開発大紹介!
https://hatena.connpass.com/event/329455/
Nabe
September 19, 2024
Tweet
Share
More Decks by Nabe
See All by Nabe
GraphicsLayerのBitmap作成
numeroanddev
0
95
Android アプリのプロジェクトをモダンにし続ける工夫
numeroanddev
1
590
Material 3で Material 2ぽい見た目にする
numeroanddev
2
480
Google I/O 2023 の 個人的おすすめセッションの紹介 / Introducing interesting sessions at Google IO 2023
numeroanddev
1
370
Jetpack ComposeのTalkback対応/Improve Talkback in Jetpack Compose
numeroanddev
0
440
Baseline Profilesでアプリのパフォーマンスを向上させる / Improve app performance with Baseline Profiles
numeroanddev
0
850
Jetpack Composeでアプリを開発して遭遇した問題
numeroanddev
0
650
Material3(Material You) の変更点 / Changes in Material3(Material You)
numeroanddev
4
1.4k
Refreshing widgets in Android 12
numeroanddev
2
610
Other Decks in Programming
See All in Programming
開発者とQAの越境で自動テストが増える開発プロセスを実現する
92thunder
1
180
rails stats で紐解く ANDPAD のイマを支える技術たち
andpad
1
290
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
690
Jakarta EE meets AI
ivargrimstad
0
230
선언형 UI에서의 상태관리
l2hyunwoo
0
140
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
180
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
110
あれやってみてー駆動から成長を加速させる / areyattemite-driven
nashiusagi
1
200
【re:Growth 2024】 Aurora DSQL をちゃんと話します!
maroon1st
0
770
Haze - Real time background blurring
chrisbanes
1
510
talk-with-local-llm-with-web-streams-api
kbaba1001
0
170
SymfonyCon Vienna 2025: Twig, still relevant in 2025?
fabpot
3
1.2k
Featured
See All Featured
Unsuck your backbone
ammeep
669
57k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
5
440
Building an army of robots
kneath
302
44k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Writing Fast Ruby
sferik
628
61k
Optimising Largest Contentful Paint
csswizardry
33
3k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Building Your Own Lightsaber
phodgson
103
6.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
How STYLIGHT went responsive
nonsquared
95
5.2k
Transcript
ͯͳͷϞόΠϧ։ൃେհʂ ,B[VLJ8BUBOBCF (SBQI2-ͱ(JHB7JFXFSGPS"QQT
1SPGJMF w ͳ w 5XJUUFS!/BCF$PUU w (JU)VC/6NFSP"OE%FW w גࣜձࣾͯͳ w
"OESPJEBQQMJDBUJPOFOHJOFFS w +FUQBDL$PNQPTF w .BUFSJBM%FTJHO
͜͜Ͱग़ͯ͘ΔίʔυงғؾΛ͑ΔͷͰ͋Γ࣮ࡍͷίʔυͱҟͳΓ·͢
(JHB7JFXFSGPS"QQTͰ (SBQI2-Λ͍ͬͯ·͢
(SBQI2-ͱ
(SBQI2-ͱ w "1*༻ͷΫΤϦݴޠ w ΫϥΠΞϯτଆ͕ඞཁͳͷ͚ͩΛऔಘͰ͖Δ w ͑Δσʔλ͕هड़͞ΕͨεΩʔϚͱɺΫϥΠΞϯτଆ͔Βͷૢ࡞ͱͯ͠ 2VFSZͱ.VUBUJPOͱ4VCTDSJQUJPOͷΫΤϦ͔ΒͳΔ εΩʔϚ ΫΤϦ
ͳͥ(SBQI2-Λ͍ͬͯΔͷ͔
ͳͥ(SBQI2-Λ͍ͬͯΔͷ͔ w (JHB7JFXFSશମͰݟͨ࣌ʹ3&45ͱൺͯϝϦοτ͕େ͖͍ w ΤϯυϙΠϯτ͕૿͑ͯཧ͕͍͠ͱ͍ͬͨ͜ͱ͕ͳ͍ w ΞϓϦ߹Ͱऔͬͯ͘Δใͷ૿ݮ͕Մೳ w ͋ΔϝσΟΞͰ࡞ͬͨεΩʔϚͷ fi
FMEΛผͷϝσΟΞʹ͍·ΘͤΔ w αʔόɾΞϓϦؒͰεΩʔϚΛத৺ʹ͕ٞͰ͖ΔͷͰೝࣝᴥᴪΛݮΒͤΔ w ΞϓϦଆ͔ΒݟͯϝϦοτ͕͋Δ w ΫϥΠΞϯτଆͷϥΠϒϥϦͰ͋Δ"QPMMPʹΑΔܕͷࣗಈੜ w "QPMMPʹڧྗͳΩϟογϡͷػߏ͕උΘ͓ͬͯΓɺΩϟογϡػߏΛར༻ͨ͠ঢ়ଶཧ͕ ͍͢͠
(JHB7JFXFSGPS"QQT ͷϓϩδΣΫτߏ
(JHB7JFXFSGPS"QQTͷϓϩδΣΫτߏ
(JHB7JFXFSGPS"QQTͷϓϩδΣΫτߏ w εΩʔϚ྆ϓϥοτϑΥʔϜڞ ௨ w (JU)VC"DUJPOTͰࣗಈߋ৽
(JHB7JFXFSGPS"QQTͷϓϩδΣΫτߏ w ΫΤϦ֤ϓϥοτϑΥʔϜ͝ͱ w (JHB7JFXFSGPS"QQT։ൃॳ ظΫΤϦϓϥοτϑΥʔϜ Ͱڞ௨ʹ͍͕ͯͨ͠ɺΫΤϦ ͷมߋͰ྆ϓϥοτϑΥʔϜͷ ίʔυͷมߋ͕ൃੜ͢Δ͜ͱ ʹରͯ͠։ൃ͕ग़ͳ͘ͳ
ͬͨͷͰ
(JHB7JFXFSGPS"QQTͷϓϩδΣΫτߏ w "OESPJEGFBUVSFϞδϡʔϧʹ ͦͷػೳͰඞཁͳRVFSZΛஔ͍ͯ ͓Γɺڞ௨Ͱ༻͢ΔGSBHNFOU "QPMMPΛ֦ுͨ͠ίʔυʹͭ ͍ͯHSBQIRMϞδϡʔϧʹஔ
(JHB7JFXFSGPS"QQT "OESPJEͷΞʔΩςΫνϟ
"OESPJEͷΞʔΩςΫνϟ w (JHB7JFXFSGPS"QQTͷ"OESPJEͰ(SBQI2-ΫϥΠΞϯτʹ"QPMMP,PUMJO Λ༻ w J04"QPMMPJ04Λ༻ w "OESPJEʹ͓͍ͯ(SBQI2-ͷΫϥΠΞϯτʹ"QPMMP,PUMJOҎ֎ͷબࢶ͕ ΄΅ͳ͍
"OESPJEͷΞʔΩςΫνϟ "QPMMP,PUMJOͷհ w ,PUMJOͷ(SBQI2-ΫϥΠΞϯτ w DPSPVUJOFTɺ,PUMJO.VMUJQMBUGPSNରԠ w "OESPJE4UVEJP*OUFMMJ+1MVHJO w (SBQI2-ϑΝΠϧฤूޙͷࣗಈίʔυੜ
w ίʔυδϟϯϓɺ༻͍ͯ͠ͳ͍ fi FMEͷϋΠϥΠτ w FUD IUUQTHJUIVCDPNBQPMMPHSBQIRMBQPMMPLPUMJO
"OESPJEͷΞʔΩςΫνϟ w (JHB7JFXFSGPS"QQTͷ"OESPJEͰ"QPMMP,PUMJO "OESPJEެࣜͷΞʔΩ ςΫνϟΨΠυ IUUQTEFWFMPQFSBOESPJEDPNUPQJDBSDIJUFDUVSF
w 6*-BZFSͷ7JFX.PEFMPS %PNBJO-BZFSͷ6TF$BTF͕ "QPMMP,PUMJOΛѻ͏ܗʹ͍ͯ͠Δ w "QPMMP,PUMJOͷੜͨ͠Ϋϥε Λͦͷ··͍͍ͨͷͰɺܕͷ ٧Ίସ͑Ӆṭ͕ඞཁͳ͍ w Ωϟογϡͷػߏ͕"QPMMP
,PUMJOʹ͋ΔͨΊɺΩϟογϡ ͷϩδοΫ࣮͕ෆཁ "OESPJEͷΞʔΩςΫνϟ
(SBQI2-ͷ׆༻
(SBQI2-ͷ׆༻ Ωϟογϡ w "QPMMPͰਖ਼نԽ͞ΕͨσʔλΛϝϞϦPSσʔλϕʔεʹอ࣋͢Δ͜ͱ͕Ͱ ͖Δ /PSNBMJ[FEDBDIF w ͜ͷΩϟογϡܦ༝ͰͷͷมߋΛߪಡ͢Δ͜ͱͰ͖Δ w
(JHB7JFXFSGPS"QQTͰ"QPMMPͷΩϟογϡΛ׆༻͍ͯ͠Δ
(SBQI2-ͷ׆༻ Ωϟογϡ w ࡞ৄࡉͷ͓ؾʹೖΓՃΛྫʹ w Α͋͘Δ͍͍ͶϘλϯ
(SBQI2-ͷ׆༻ Ωϟογϡ ͓ؾʹೖΓͷϑϥάΛ࣋ͭRVFSZ
(SBQI2-ͷ׆༻ Ωϟογϡ ͦͷRVFSZΛ7JFX.PEFMͰߪಡ
(SBQI2-ͷ׆༻ Ωϟογϡ ͓ؾʹೖΓʹՃ͍ͯ͠ͳ͚ΕNZMJTUFEGBMTFΛ࣋ͬͨσʔλ͕ྲྀΕͯ͘Δ
(SBQI2-ͷ׆༻ Ωϟογϡ ͓ؾʹೖΓͷঢ়ଶߋ৽ͷNVUBUJPO
(SBQI2-ͷ׆༻ Ωϟογϡ NVUBUJPOΛݺͿॲཧΛ࣮͓ͯ͘͠
(SBQI2-ͷ׆༻ Ωϟογϡ NVUBUJPOͷ݁Ռ͕ฦͬͯ͘Δͱߪಡ͍ͯͨ͠෦Ͱߋ৽͞Εͨσʔλ͕ྲྀΕͯ͘Δ
(SBQI2-ͷ׆༻ Ωϟογϡ NVUBUJPOͷ݁ՌΛݩʹΩϟογϡσʔλΛߋ৽ͯ͘͠ΕΔ
w ͓ؾʹೖΓՃͰͷ0QUJNJTUJDVQEBUFT ָ؍తߋ৽ ͷ༻ w ௨ৗNVUBUJPOͷ݁Ռ͕αʔό͔Βฦͬͯ͘Δ·Ͱʹ͕͔͔࣌ؒΔͨΊɺ ૢ࡞ޙ͔Β݁Ռ͕ը໘ʹө͞ΕΔ·Ͱʹϥά͕ੜ͡Δ w 0QUJNJTUJDVQEBUFTఆ͞ΕΔ݁ՌΛ͋Β͔͡Ίөͤ͞Δ͜ͱͰɺϥ άͷൃੜͳ͘ը໘ʹ݁ՌΛөͰ͖Δ
w Τϥʔ࣌ʹঢ়ଶ͕Δ (SBQI2-ͷ׆༻ Ωϟογϡ
(SBQI2-ͷ׆༻ Ωϟογϡ ͓ؾʹೖΓՃࡁΈͷঢ়ଶΛઌʹөͤ͞Δ
(SBQI2-ͷ׆༻ ϖʔδϯά w (SBQI2-ͰͷϖʔδϯάɺΫΤϦ͝ͱʹબͨ͠ൣғͷϨεϙϯε͕ฦͬ ͯ͘ΔͷͰɺ͏ଆ͔ΒͦΕ·ͰͷσʔλΛอ࣋Ϛʔδ͢Δඞཁ͕͋Δ w ࠷ॳͷΫΤϦͰdɺ࣍ͷΫΤϦͰd w "QPMMP,PUMJOͷߪಡҾؚΉΫΤϦʹର͢ΔߪಡͳͷͰɺ୯ʹσʔλΛอ ࣋Ϛʔδ͍ͯ͠Δ͚ͩͩͱϖʔδϯάͰΫΤϦͷҾ͕มΘͬͯ͠·͏ͨ
ΊʹΩϟογϡͷมߋΛߪಡ͢Δ͜ͱ͕Ͱ͖ͳ͍ w (JHB7JFXFSGPS"QQTͰΩϟογϡมߋʹରԠͰ͖ΔΑ͏ͳ࣮Λ༻ҙ ͍ͯ͠Δ
(SBQI2-ͷ׆༻ ϖʔδϯά
w ࠷ॳͷΫΤϦʹରͯ͠ϖʔδϯ άͨ͠σʔλΛ·ͱΊͨͷΛ ඥ͚ͯΩϟογϡʹೖΕΔ͜ ͱͰɺ࠷ॳͷΫΤϦΛߪಡ͢Δ ͚ͩͰϖʔδϯάͨ͠શͯͷσ ʔλʹର͢ΔมߋΛड͚औΕΔ Α͏ʹ͍ͯ͠Δ (SBQI2-ͷ׆༻ ϖʔδϯά
w "QPMMP4UPSFSFBE0QFSBUJPOͰ ࠷ॳͷΫΤϦʹରͯ͠ͷΩϟο γϡΛऔಘ (SBQI2-ͷ׆༻ ϖʔδϯά
w ॳճͳΒ࠷ॳͷϖʔδɺͦ͏Ͱ ͳ͍ͳΒ࣍ϖʔδͷσʔλΛऔ ಘ (SBQI2-ͷ׆༻ ϖʔδϯά
w Ωϟογϡͱऔಘͨ͠σʔλΛ Ϛʔδ w Ϛʔδ͢Δσʔλͷ༰Ϋ ΤϦ͝ͱͰҧ͏ͷͰɺ͏ଆ Ͱ੍ޚ͢ΔΑ͏ʹ͍ͯ͠Δ (SBQI2-ͷ׆༻ ϖʔδϯά
w Ϛʔδͨ͠σʔλΛ࠷ॳͷΫΤ ϦͷΩϟογϡͱͯ͠ "QPMMP4UPSFXSJUF0QFSBUJPOͰ อଘ (SBQI2-ͷ׆༻ ϖʔδϯά
(SBQI2-ͷ׆༻ ෛՙରࡦ w গδϟϯϓ ͷΞΫηεΛࡹ͘ͷαʔόଆ͚ͩͷෛՙରࡦͰ͍͔ͭ ͳ͍ͷͰɺΞϓϦଆͰ(SBQI2-Λ׆༻ͨ͠ෛՙରࡦΛ͍ͯ͠Δ w લఏͱͯ͠ɺαʔόଆͰΫΤϦ୯ҐͰΩϟογϡ͢ΔΈ͕͋Γɺ࡞ͷ λΠτϧ࡞ऀ໊ͱ͍ͬͨมΘΔ͜ͱ͕ͳ͍ fi
FME͚ͩͰߏ͞ΕͨΫΤϦ αʔόଆͰΩϟογϡ͞ΕΔ͕ɺ࡞ͷߪೖঢ়ଶݱࡏ͍࣋ͬͯΔίΠϯ ͷϢʔβʹؔ͢Δ fi FMEΛؚΉͱͦͷΫΤϦαʔόଆͰΩϟογϡ͞Εͳ͍ w ΞϓϦଆͰΫΤϦΛαʔόଆͰΩϟογϡͰ͖ΔͷͱͰ͖ͳ͍ͷΛׂ ͍ͯ͠Δ
(SBQI2-ͷ׆༻ ෛՙରࡦ ΩϟογϡՄ ΩϟογϡෆՄ
ͬͱ(SBQI2-Λ׆༻͍ͨ͠
ͬͱ(SBQI2-Λ׆༻͍ͨ͠ w (SBQI2-Ͱ͏͜ͱ͕Ͱ͖͍ͯͳ͍ػೳ͋Δ w 1FSTJTUFE2VFSZͷ༻ w ఆ֎ͷΫΤϦΛ͍ͩΓ(&5ϦΫΤετʹΑΔ$%/ͷΩϟογϡར༻ w ΫϥΠΞϯτଆ͕NVUBUJPOΛ1045ʹ͢Δڍಈʹରͯ͠αʔόଆͰͷରԠ͕Ͱ ͖͍ͯͳ͍
w %JSFDUJWFͷ׆༻ w (JHB7JFXFSͱͯ͠!IBT'FBUVSFͱ͍͏ΧελϜ%JSFDUJWF͕༻ҙ͞Ε͓ͯ Γɺ8FCଆͰϝσΟΞʹΑͬͯ͑ΔػೳΛεΩʔϚʹදݱ͞Ε͍ͯΔ w ͔͠͠"QPMMPJ04,PUMJOʹΧελϜ%JSFDUJWF͕αϙʔτ͞Ε͍ͯͳ͍
·ͱΊ
·ͱΊ w Ϛϧνςφϯτͳ(JHB7JFXFSͰ(SBQI2-Λͬͯԣల։ͷ͢͠͞։ൃ ମݧ͕ྑ͘ͳͬͨ w "QPMMPͷΩϟογϡػߏศར w "QPMMPΛ׆༻ͯ͠՝Λղܾ͍ͯ͠Δ w ·ͩ·ͩ׆༻Ͱ͖͍ͯͳ͍ػೳ͋ΔͷͰͬͱ׆༻͍͖͍ͯͨ͠
5IBOLZPV