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
4.1k
GraphQLとGigaViewer for Apps
はてなのモバイル開発大紹介!
https://hatena.connpass.com/event/329455/
Nabe
September 19, 2024
Tweet
Share
More Decks by Nabe
See All by Nabe
カクヨムAndroidアプリのリブート
numeroanddev
0
530
GraphicsLayerのBitmap作成
numeroanddev
0
190
Android アプリのプロジェクトをモダンにし続ける工夫
numeroanddev
1
700
Material 3で Material 2ぽい見た目にする
numeroanddev
2
610
Google I/O 2023 の 個人的おすすめセッションの紹介 / Introducing interesting sessions at Google IO 2023
numeroanddev
1
430
Jetpack ComposeのTalkback対応/Improve Talkback in Jetpack Compose
numeroanddev
0
540
Baseline Profilesでアプリのパフォーマンスを向上させる / Improve app performance with Baseline Profiles
numeroanddev
0
930
Jetpack Composeでアプリを開発して遭遇した問題
numeroanddev
0
710
Material3(Material You) の変更点 / Changes in Material3(Material You)
numeroanddev
4
1.5k
Other Decks in Programming
See All in Programming
株式会社 Sun terras カンパニーデック
sunterras
0
220
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3k
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
230
PostgreSQLで手軽にDuckDBを使う!DuckDB&pg_duckdb入門/osk2025-duckdb
takahashiikki
1
240
ソフトウェア設計の実践的な考え方
masuda220
PRO
3
470
Model Pollution
hschwentner
1
180
ネイティブ製ガントチャートUIを作って学ぶUICollectionViewLayoutの威力
jrsaruo
0
130
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3k
明日から始めるリファクタリング
ryounasso
0
110
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
kobakei
0
490
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
140
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
1.1k
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.6k
Building Applications with DynamoDB
mza
96
6.6k
Docker and Python
trallard
46
3.6k
Statistics for Hackers
jakevdp
799
220k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
How to Ace a Technical Interview
jacobian
280
23k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Fireside Chat
paigeccino
40
3.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
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