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
「サイボウズ Office」 の iOSアプリをリニューアルした話 / Renewal "Cy...
Search
elmetal
PRO
July 29, 2021
Programming
0
670
「サイボウズ Office」 の iOSアプリをリニューアルした話 / Renewal "Cybozu Office" iOS App
elmetal
PRO
July 29, 2021
Tweet
Share
More Decks by elmetal
See All by elmetal
Designing DocC for Clarity and Beauty
elmetal
PRO
0
63
SwiftUI Viewの責務分離
elmetal
PRO
2
420
サイボウズiOSアプリのマルチモジュール 2024
elmetal
PRO
0
95
開発を加速する共有Swift Package実践
elmetal
PRO
0
1.1k
Resolve Nested ObservableObject issues in Observation
elmetal
PRO
0
320
ObservationSallowDive
elmetal
PRO
1
340
Overview Of Swiftc
elmetal
PRO
1
340
社会人からのスキルアップ戦略
elmetal
PRO
0
1k
ScrumMasterから見るScrumの姿
elmetal
PRO
1
2k
Other Decks in Programming
See All in Programming
XP, Testing and ninja testing ZOZ5
m_seki
2
240
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
2.8k
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
1
430
Let's Write a Train Tracking Algorithm
twocentstudios
0
220
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
210
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
330
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
110
止められない医療アプリ、そっと Swift 6 へ
medley
1
100
Breaking Up with Big ViewModels — Without Breaking Your Architecture (droidcon Berlin 2025)
steliosf
PRO
1
290
プログラミングどうやる? ~テスト駆動開発から学ぶ達人の型~
a_okui
0
190
AIで開発生産性を上げる個人とチームの取り組み
taniigo
0
130
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
460
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
368
20k
Typedesign – Prime Four
hannesfritz
42
2.8k
The Language of Interfaces
destraynor
162
25k
Designing for Performance
lara
610
69k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
How GitHub (no longer) Works
holman
315
140k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
Building Adaptive Systems
keathley
43
2.8k
A better future with KSS
kneath
239
17k
Transcript
0QFO4PVSDF$POGFSFODF0OMJOF,ZPUPӿݪଠ ʮαΠϘζ0GGJDFʯͷ J04ΞϓϦΛϦχϡʔΞϧͨ͠
"CPVUNF w ӿݪଠ w !FM@NFUBM@ w αΠϘζϞόΠϧνʔϜ w J04EFWFMPQFS
αΠϘζ ձࣾհ w αΠϘζɺʮνʔϜϫʔΫ͋;ΕΔࣾձΛΔʯͱ͍͏ཧ೦ͷͱɺνʔ ϜϫʔΫΛࢧ͑ΔιϑτΣΞ։ൃɾΫϥυαʔϏεͷӡ༻Λߦ͍ͬͯ· ͢ɻ w ʮLJOUPOFʯʮαΠϘζ0 ffi DFʯʮ(BSPPOʯʮϝʔϧϫΠζʯͳͲɺྦྷܭ
ສࣾɾઍສϢʔβʔʹར༻͍͍ͯΔάϧʔϓΣΞɺۀվળα ʔϏεΛ࣠ʹɺࣾձͷνʔϜϫʔΫ্Λࢧԉ͍ͯ͠·͢ɻ
αΠϘζϞόΠϧνʔϜ νʔϜհ w ʮαΠϘζͷϢʔβʹɺΑΓνʔϜϫʔΫ͕ߴ·ΔϞόΠϧମݧΛఏڙ ͢ΔʯΛϛογϣϯʹɺओʹJ04"OESPJEͷΞϓϦ։ൃʹैࣄ͍ͯ͠·͢ɻ w ·ͨɺϓϩμΫτ։ൃͷଞʹϞόΠϧઐͷΤϯδχΞͱͯ͠ɺ࠷৽ٕज़ ۀքͷτϨϯυͳͲΛௐࠪ͢Δ࣌ؒΛઃ͚νʔϜͷεΩϧΞοϓΛਤ͍ͬͯ· ͢ɻ
αΠϘζ0GGJDFϞόΠϧΞϓϦ
αΠϘζ0GGJDFϞόΠϧΞϓϦ ʮαΠϘζ0 ffi DF৽ண௨ʯ w αΠϘζ0 ffi DFͷ௨༧ఆ Λ֬ೝͰ͖ΔΞϓϦ w
ϓογϡ௨Ͱ࠷৽ใΛड ͚औΕΔ
ϦϓϨʔεͷഎܠ
ϦϓϨʔεͷഎܠ w ೋཁૉೝূରԠͷػೳՃཁٻ w ࣄۀઓུͷมԽ w ϞόΠϧΞϓϦྗ͍ͯ͘͠ܗʹมԽ w طଘͷίʔυϕʔε͕՝ʹ w
8FCΞϓϦͷ։ൃνʔϜ͕ϞόΠϧΞϓϦ୲͍ͯͨ͠ w "QBDIF$PSEPWBΛͬͯ54ͰΫϩεϓϥοτϑΥʔϜ։ൃ w ϓϥοτϑΥʔϜݻ༗ͷ͕ൃੜ͢ΔͱରԠ͕͍͠
ٕज़બఆ
ٕज़બఆ ΫϩεϓϥοτϑΥʔϜWTωΠςΟϒ w ϞόΠϧνʔϜ͕։ൃΛҾ͖औΔ͜ͱʹ w ܧଓ։ൃ͕Մೳͳٕज़͕ඞཁ w εΩϧηοτͷϚονϯά w ϞόΠϧνʔϜͷεΩϧηοτ
w J04"OESPJEΤϯδχΞٻ৬ࢢͷεΩϧηοτ
ωΠςΟϒ։ൃΛ࠾༻
ٕज़બఆ 6*,JUWT4XJGU6* w J04Ͱ6*ϑϨʔϜϫʔΫͷجຊͱͯ͠બࢶ͕छྨ͋ͬͨ w 6*,JU w ࠾༻࣮ͷ͋ΔރΕͨϑϨʔϜϫʔΫ w 4XJGU6*
w ࠾༻࣮ͷͳ͍৽͍͠ϑϨʔϜϫʔΫ
ٕज़બఆ 6*,JU w ेʹރΕ͍ͯΔ w ࠓޙϨΨγʔʹͳΔϦεΫ
ٕज़બఆ 4XJGU6* w ৽نٕज़ʢൃදʣ w جຊతͳ6*։ൃ͕ѹతʹૣ͍ w ϓϩμΫγϣϯͷࣄྫ͕গͳ͍ w ϑϨʔϜϫʔΫͱͯ͠ະख़
w ػೳෆόάͷϦεΫ w 6*,JUʹൺҙਤతͳ੍ଟ͍
4XJGU6*Λ࠾༻
࠾༻ج४ ॏࢹͨ͠ϙΠϯτ w ࣋ଓՄೳੑ w ։ൃͷߴԽ w ڝ૪༏Ґੑͷ֫ಘ
࠾༻ج४ ࣋ଓՄೳੑ w ٕज़બఆ࣌ͷҎ߱։ൃ͕ଓ͘ w ˠͰͷϑϨʔϜϫʔΫͷ w ػೳෆ͕ղফ͞Ε͍ͯ͘ݟࠐΈ w ػೳෆɾόάͷϦεΫ͕࣌ؒܦͭʹͭΕͯݮগ͢Δ
w 6*ϑϨʔϜϫʔΫͱͯ͠ύϥμΠϜνΣϯδ͕͋Δ w 6*,JU͔ΒͷҠߦʹ$PEF4USVDUVSFͷେ෦ʹӨڹ͢Δ w ϨΨγʔԽͷϦεΫ͕࣌ؒܦͭʹͭΕͯ૿େ͢Δ
࠾༻ج४ ։ൃͷߴԽ w ։ൃ։࢝࣌Ͱͷཁ݅4XJGU6*ͷػೳηοτͰຬͨͤΔঢ়ଶ w όάͷϦεΫ͕ݦࡏԽͯ͠૯߹తʹૣ͘։ൃͰ͖ΔݟࠐΈ
࠾༻ج४ ڝ૪༏Ґੑͷ֫ಘ w ૣظʹϓϩμΫγϣϯͰ࠾༻͢Δ͜ͱͰଞࣾΑΓٕज़తͳ༏ҐΛࢦ͢ w ϦεΫΛҾ͖ड͚Δ֮ޛ w ൃੜ͢ΔࣗྗͰղܾ͢Δ w ࠾༻ʹνʔϜͷ࣋ଓՄೳੑͷϙδςΟϒͳޮՌͷظ
ίʔυઃܭ
$PEF4USVDUVSFઃܭ 0 ffi DFϞόΠϧΞϓϦҎલ w J04"OESPJEͷઃܭΛ߹ΘͤΔํΛ࠾༻͍ͯͨ͠ w શϝϯόʔ͕݉Ͱ྆ϓϥοτϑΥʔϜΛ։ൃ͢Δମ੍ w εΠονϯάίετΛԼ͍͛ͨ
w 6*ϑϨʔϜϫʔΫͷύϥμΠϜ͕ἧ͍ͬͯͨ w $PEF4USVDUVSFΛἧ͑Δίετେ͖͘ͳ͍
$PEF4USVDUVSFઃܭ 0 ffi DFϞόΠϧ w ํసΛܾఆ w 0 ffi DFϞόΠϧΞϓϦ֤ϓϥοτϑΥʔϜͰઐମ੍
w 4XJGU6*ͷ࠾༻ܾఆʹΑΓϓϥοτϑΥʔϜؒͰҟͳΔύϥμΠϜʹ w ઃܭۭ͕ؒ4XJGU,PUMJOͷڞ௨෦ͷΈʹ੍ݶ͞ΕΔͷΛආ͚͍ͨ
։ൃͷਐΊํ
։ൃͷਐΊํ ཁ݅ w ϦχϡʔΞϧͷͨΊݱߦόʔδϣϯͷػೳηοτΛἧ͑Δ w ೋཁૉೝূػೳΛՃ͢Δ w fi Yͨ͠ೲظͷઃఆͳ͍ͷͷϦϦʔεܭը͋Δ ˠεέδϡʔϧʹର͢Δෆ࣮֬ੑΛݮͰ͖ΔਐΊํ
։ൃͷਐΊํ ৫ɾจԽ w ։ൃຊ෦εΫϥϜΛ࠾༻͢Δ͜ͱ͕ଟ͍ w ϦχϡʔΞϧྃޙ৽نͷՁݕূ։ൃΛਐΊ͍ͨ w ։ൃ։࢝࣌ͰͷϦιʔεͷ w ϞόΠϧΞϓϦʹϑϧίϛοτͰ͖ΔͷςετίʔυΛؚΉ
ίʔυΛॻ͘ΤϯδχΞͷΈ
։ൃͷਐΊํ ϓϩηεબఆ w εΫϥϜΛجຊͱͨ͠िؒΠςϨʔγϣϯͰͷΞδϟΠϧ։ൃΛ࠾༻ w ։ൃνʔϜଈ࣌ΫϩεϑΝϯΫγϣφϧʹͳΓ͖Εͳ͍ w ϦχϡʔΞϧҎ߱Λ౿·͑ͯ։ൃͷϦζϜΛ࡞͓͖͍ͬͯͨ
ϦϦʔε·Ͱ
ϦϦʔε·Ͱ ։ൃϑΣʔζ w ॗʑͱ։ൃΛਐΊΔ w ༧ఆΑΓԆͨͨ͠ΊϦϦʔεܭըΛमਖ਼ w ॳͷཁ͕݅ݱߦόʔδϣϯͷػೳηοτʹରͯ͠ෆे w αΠϘζ0
ffi DFΛѻͬͨܦݧͷ͋ΔϓϩάϥϚ͕͍ͳ͍ w طଘͷ༷ͷܦҢɾྺ࢙ࡉ͔͍ڍಈΛΒͳ͔ͬͨ
ϦϦʔε·Ͱ ෆ۩߹मਖ਼ w 4XJGU6*ىҼͷόά͕ൃੜ w ϦχϡʔΞϧʹ͍σβΠϯΛҰ෦มߋ w มߋ෦ʹ4XJGU6*ʹͱͬͯϦεΫͷ͋ΔσβΠϯ͕ଘࡏͨ͠ w ϦεΫϦϑΝΠϯϝϯτ࣌ʹ͍͑ͯͨ
w ͦͷ࣌Ͱڐ༰͞ΕɺޙʹݦࡏԽ😢
ϦϦʔε·Ͱ νʔϜͷֶश w ྺ࢙ͷஅઈͷϦεΫ w ػೳͷܦҢ͕Θ͔Βͳ͍ w ސ٬ʹͱͬͯॏཁͳػೳඇػೳཁ݅ͷѲ͕ෆे w ٕज़ͱ༷ͷϚονϯά
w ࣗνʔϜʹܾఆݖ͕͋ΔͳΒ༗ޮʹ͏ w ෆ۩߹ֶशͷػձ
·ͱΊ
·ͱΊ w ϦχϡʔΞϧ࣌ͷٕज़બఆɺ։ൃϓϩηεܾఆͱͦͷޙͷ։ൃͷਐΊํɺϦϦ ʔε·ͰͷಓͷΓΛ͝հ͠·ͨ͠ɻ w ٕज़બఆ࣌ɺ։ൃϓϩηεܾఆ࣌ͷ؍τϨʔυΦϑʹ͍͓ͭͯ͠͠· ͨ͠ɻ w ϦϦʔε·ͰʹνʔϜͰֶशͨ͜͠ͱΛ͓͠͠·ͨ͠ɻ