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
680
「サイボウズ Office」 の iOSアプリをリニューアルした話 / Renewal "Cybozu Office" iOS App
elmetal
PRO
July 29, 2021
Tweet
Share
More Decks by elmetal
See All by elmetal
A Swift Way to Blog
elmetal
PRO
0
110
Designing DocC for Clarity and Beauty
elmetal
PRO
0
71
SwiftUI Viewの責務分離
elmetal
PRO
2
430
サイボウズiOSアプリのマルチモジュール 2024
elmetal
PRO
0
100
開発を加速する共有Swift Package実践
elmetal
PRO
0
1.2k
Resolve Nested ObservableObject issues in Observation
elmetal
PRO
0
330
ObservationSallowDive
elmetal
PRO
1
340
Overview Of Swiftc
elmetal
PRO
1
350
社会人からのスキルアップ戦略
elmetal
PRO
0
1k
Other Decks in Programming
See All in Programming
Amazon Verified Permissions実践入門 〜Cedar活用とAppSync導入事例/Practical Introduction to Amazon Verified Permissions
fossamagna
2
110
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
110
他言語経験者が Golangci-lint を最初のコーディングメンターにした話 / How Golangci-lint Became My First Coding Mentor: A Story from a Polyglot Programmer
uma31
0
480
Researchlyの開発で参考にしたデザイン
adsholoko
0
100
三者三様 宣言的UI
kkagurazaka
0
320
マイベストのシンプルなデータ基盤の話 - Googleスイートとのつき合い方 / mybest-simple-data-architecture-google-nized
snhryt
0
110
SidekiqでAIに商品説明を生成させてみた
akinko_0915
0
110
SwiftDataを使って10万件のデータを読み書きする
akidon0000
0
250
AIと人間の共創開発!OSSで試行錯誤した開発スタイル
mae616
2
850
CSC509 Lecture 07
javiergs
PRO
0
250
ボトムアップの生成AI活用を推進する社内AIエージェント開発
aku11i
0
1.4k
NIKKEI Tech Talk#38
cipepser
0
350
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Facilitating Awesome Meetings
lara
57
6.6k
Fireside Chat
paigeccino
41
3.7k
Thoughts on Productivity
jonyablonski
72
4.9k
Typedesign – Prime Four
hannesfritz
42
2.8k
Making Projects Easy
brettharned
120
6.4k
Writing Fast Ruby
sferik
630
62k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
Faster Mobile Websites
deanohume
310
31k
Statistics for Hackers
jakevdp
799
220k
Gamification - CAS2011
davidbonilla
81
5.5k
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 ϦϦʔε·ͰʹνʔϜͰֶशͨ͜͠ͱΛ͓͠͠·ͨ͠ɻ