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
2.9k
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
140
Android アプリのプロジェクトをモダンにし続ける工夫
numeroanddev
1
650
Material 3で Material 2ぽい見た目にする
numeroanddev
2
540
Google I/O 2023 の 個人的おすすめセッションの紹介 / Introducing interesting sessions at Google IO 2023
numeroanddev
1
390
Jetpack ComposeのTalkback対応/Improve Talkback in Jetpack Compose
numeroanddev
0
490
Baseline Profilesでアプリのパフォーマンスを向上させる / Improve app performance with Baseline Profiles
numeroanddev
0
880
Jetpack Composeでアプリを開発して遭遇した問題
numeroanddev
0
680
Material3(Material You) の変更点 / Changes in Material3(Material You)
numeroanddev
4
1.5k
Refreshing widgets in Android 12
numeroanddev
2
640
Other Decks in Programming
See All in Programming
20250326_生成AIによる_レビュー承認システムの実現.pdf
takahiromatsui
17
6.1k
爆速スッキリ! Rspack 移行の成果と道のり - Muddy Web #11
dora1998
1
170
英語文法から学ぶ、クリーンな設計の秘訣
newnomad
1
280
自分のために作ったアプリが、グローバルに使われるまで / Indie App Development Lunch LT
pixyzehn
1
140
Devinのメモリ活用の学びを自社サービスにどう組み込むか?
itarutomy
0
1.9k
Devin入門と最近のアップデートから見るDevinの進化 / Introduction to Devin and the Evolution of Devin as Seen in Recent Update
rkaga
9
4.2k
アプリを起動せずにアプリを開発して品質と生産性を上げる
ishkawa
0
2.2k
複数ドメインに散らばってしまった画像…! 運用中のPHPアプリに後からCDNを導入する…!
suguruooki
0
450
AI Agents with JavaScript
slobodan
0
190
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
1
390
goにおける コネクションプールの仕組み を軽く掘って見た
aronokuyama
0
150
AI時代のプログラミング教育 / programming education in ai era
kishida
23
21k
Featured
See All Featured
Embracing the Ebb and Flow
colly
85
4.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
12
630
Bash Introduction
62gerente
611
210k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.3k
The Cost Of JavaScript in 2023
addyosmani
48
7.6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
118
51k
Agile that works and the tools we love
rasmusluckow
328
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Designing for humans not robots
tammielis
251
25k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
51
2.4k
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