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
15年目のiOSアプリを1から作り直す技術
Search
TAKEDA Yuki
February 18, 2026
Programming
670
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
15年目のiOSアプリを1から作り直す技術
TAKEDA Yuki
February 18, 2026
More Decks by TAKEDA Yuki
See All by TAKEDA Yuki
特定のViewControllerを表示するときだけTabBarを隠したい
teakun
1
590
Other Decks in Programming
See All in Programming
Creating Composable Callables in Contemporary C++
rollbear
0
200
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
初めてのKubernetes 本番運用でハマった話
oku053
0
120
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
310
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
310
act2-costs.pdf
sumedhbala
0
110
ランチタイムLT会3周年!ランチタイムLT会を3年間続けられたお話
y0hgi
1
140
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
160
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
140
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
210
Developing with AI Agents — Codex, Claude Code & Cowork Practical Guide
x5gtrn
PRO
0
1.4k
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
580
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
500
Making the Leap to Tech Lead
cromwellryan
135
10k
A Soul's Torment
seathinner
6
3.1k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
880
Prompt Engineering for Job Search
mfonobong
0
370
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
240
Transcript
-*/&Ϡϑʔגࣜձࣾా༔ᏻ ͷJ04ΞϓϦΛ͔Β࡞Γٕ͢ज़ ϞόΠϧΞϓϦ@ fi OEZ ϞόΠϧΞϓϦͷظӡ༻ͱ͖߹͏dҎ্ଓ͘ΞϓϦͰॏͶ͖ͯͨஅͱd
ϞόΠϧΞϓϦ@ fi OEZ
w ా༔ᏻ ͚ͨͩΏ͏͖ w ͜Ε·Ͱͷ୲αʔϏε w :BIPPϑϦϚ w :BIPPϚʔτ
w :BIPPΦʔΫγϣϯ ࣗݾհ !@@@UFB
:BIPPΦʔΫγϣϯ w ຊ࠷େڃͷΦʔΫγϣϯαʔϏε w ʹαʔϏε։࢝ w ʹJ04W͕ϦϦʔε
݄ʹϦχϡʔΞϧ
͔Β࡞Γ͢ͱͲ͏͍͏͜ͱ͔
None
ͳͥ࡞Γ͔ͨ͠ αʔϏεͷͷͨΊʹػೳ։ൃΛ༏ઌ ϦϑΝΫλϦϯάͷ͕࣌ؒ֬อͰ͖ͳ͍ ٕज़ෛ࠴͕ͲΜͲΜΒΜͰฦࡁͰ͖ͳ͍ ͜ͷঢ়گ͕Կଓ͍ͨ݁Ռ։ൃεϐʔυ͕େ෯ʹԼ Ϗδωεʹରͯ͠ѱӨڹ͕ग़ͯ͠·͍ͬͯͨ
ӡ༻ͨ͠ΞϓϦ Ͳ͏ͳ͍ͬͯͨͷ͔ʁ
ΞʔΩςΫνϟͷࠞࡏ 044ӡ༻ίετͷ૿େ 0CKFDUJWF$ͷଘࡏ ओͳ՝
ΞʔΩςΫνϟͷࠞࡏ .7$ .77. 3Y4XJGU .71 .77.
4XJGU6* ɾֶशίετͷ૿Ճ ɾՄಡੑͷԼ ɾ࣮ϛεෆ۩߹ͷ૿Ճ ͦͷ࣌ͷྲྀߦΓΛऔΓࠐΈଓ͚ͨ݁Ռɺ༷ʑͳΈ͕ࠞࡏ͢Δঢ়ଶʹ
044ӡ༻ίετͷ૿େ ߋ৽͕ࢭ·ͬͨ݅ Ξοϓσʔτ͕ࠔ݅ શ݅ چΞϓϦͷOSSͷར༻ঢ়گ ͳ݅͠ ٫͢Δ͖044ΛΊΒΕͳ͍··͍ͨ
0CKFDUJWF$ͷଘࡏ w શମͷ͕0CKFDUJWF$Ͱهड़͞Ε͍ͯͨ w ج൫෦ʹ͍ͬͯΔͷ͕ਏ͍ϙΠϯτ Swift 65% Objective-C 35%
چΞϓϦͷ՝ΛৼΓฦΔ w Γ͖Ε్ͣதͰࢭ·͍ͬͯΔϦϑΝΫλϦϯά͕ଟ͔ͬͨ w ͷӡ༻Ͱϝϯόʔଟ͘ೖΕସΘΓաڈͷϊϋ͕ࣦΘΕ͍ͯͨ w ݁ՌతʹؔΘΔΤϯδχΞͷϞνϕʔγϣϯ͕Լ͍ͯͨ͠
࡞Γ͠ʹ͍ͭͯ
࡞Γ͠ϓϩδΣΫτ w ظ݄ؒʙ݄ w ։ൃਓਓ w ಉ࣌ظʹ"OESPJEͰ࣮ࢪ ࢀߟ
IUUQTTQFBLFSEFDLDPNMZDPSQUFDI@KQUIFTUSVHHMFTPGDPNQMFUFMZSFOFXJOHBZFBSPME JPTBQQBOEXIBUXFDBOEPOPXGPSUIFOFYUZFBST
چΞϓϦͷ՝ΛҰؾʹղܾ ΞʔΩςΫνϟͷࠞࡏ ౷Ұ͞ΕͨΞʔΩςΫνϟ 044ӡ༻ίετͷ૿େ ݫબͨ͠044ͷ࠾༻ 0CKFDUJWF$ͷଘࡏ 4XJGUͷ౷Ұ
ΞʔΩςΫνϟͷ౷Ұ શը໘Ͱ4XJGU6*Λ࠾༻ ಛఆͷ044ʹґଘ͠ͳ͍γϯϓϧͳΈ ɾ৽نϝϯόʔͷΩϟονΞοϓͷ্ ɾ୭͕Ͳͷը໘ͰεϜʔζʹணखͰ͖ΔΑ͏ͳঢ়ଶʹ
ݫબͨ͠044ͷ࠾༻ 0 8 15 23 30 چΞϓϦ ৽ΞϓϦ UI/UX Network
Architecture Other 044ͷར༻ঢ়گલޙൺֱ 6*69 ࣗ࡞͕͍͠ػೳΛ࣋ͭ044ͷΈ࠾༻ ௨৴ ಉ͡༻్Ͱ࠾༻͞Ε͍ͯͨෳͷ044Λͭʹ౷Ұ ݫબͯ݅͠Λ݅ˠ݅ʹݮ
4XJGUͷ౷Ұ w ౷Ұ͢Δ͜ͱͰՄಡੑɾ։ൃޮ͕େ෯ʹվળ w ج൫͔Βॻ͖͑Δ͜ͱ͕Ͱ͖͕ͨಛʹྑ͔ͬͨ چΞϓϦ Swift 65% Objective-C 35%
৽ΞϓϦ Swift 100%
Ռ
ࣈͷมԽ چΞϓϦ ৽ΞϓϦ ૯ߦ ߦ ߦ Ϗϧυ࣌ؒ
ΞϓϦαΠζ .# .# Ϋϥογϡ
Ϣʔβ͔ΒͷධՁ User Feedback App StoreͰͷධՁͷਪҠ 0 1.3 2.5 3.8 5
ϦχϡʔΞϧલ ϦϦʔεޙ 3ϲ݄ޙ ޙ ٸʹUI͕มΘͬͯࠔͬͨ ͍͍ͷ͕ങ͑ͯخ͍͠ ͔ΜͨΜͰ͍͍͢ʂ
·ͱΊ
࡞Γ͠ΛৼΓฦΔ w Α͔ͬͨ w ݁ՌతʹϦϦʔεͰ͖ͯେޭɺͯ͢ͷෛ࠴͔Βͷ٫ w Ϗδωε։ൃͷεϐʔυ͕େ෯ʹվળ w ΤϯδχΞͷϞνϕʔγϣϯ͕େ্͖͕ͬͨ͘ w
ͭΒ͔ͬͨ w ৗʹ࠳ͷϦεΫ͕͋Δ w ࡞Γ͠தطଘͷΞϓϦͷվम͕࠷খݶʹͳΔ
͏࡞Γ͠ΛΒͳ͍ͨΊʹ w పఈతͳϦϑΝΫλϦϯάͷ࣮ࢪ w ࠷৽ͷٕज़ΛৗʹΩϟονΞοϓ w ෦తͳվमͰͳ͘શը໘ΓΔ w υΩϡϝϯτͷ࡞ w
୭͔͕͍ͳ͘ͳͬͯϊϋ͕ࣦΘΕͳ͍Α͏ʹ w 044ʹཔΓ͗͢ͳ͍
·ͱΊ w ΞϓϦʹ͓͍ͯ࡞Γ͠ݱ࣮తͳϦϑΝΫλϦϯάͷબࢶͷͭ w ϦεΫ͋Δ͕ಘΒΕΔՌେ͖͍ w ͖͠Εͳ͔ͬͨ෦͍ͬͺ͍ͳͷͰੋඇ͓·͚εϥΠυݟ͍ͯͩ͘͞ʂ
͓·͚
࣮ࡍͷରԠΛ͍͔ͭ͘͝հ
͔Β࡞ͬͨΞϓϦʹஔ͖͑Δʹ w #VOEMF*E͕ಉ͡Ͱ͋ΕಉҰͷΞϓϦͱΈͳ͞ΕΔ w چΞϓϦͱಉ͡#VOEMF*EΛઃఆͯͦ͠ͷ··ਃ͢Δ͚ͩ
͍͔ʹͯ͠࡞Γ͠ͷΛݮ͢Δ͔ w ػೳͷݮ w 8FCͰఏڙ͍ͯ͠ΔػೳͰͳ͍ͷ8FC7JFXʹدͤΔ w ͦͦΘΕ͍ͯͳ͍ػೳͷਫ਼ࠪ w ։ൃͷޮԽ w
ςϯϓϨʔτͷ࡞ w MJOUɺGPSNBUͳͲͷඋ
Ҿ͖ܧ͗Ͱߟྀ͕ඞཁͳཁૉ w ΞϓϦϩʔΧϧͰอ͍࣋ͯ͠Δใ w 6TFS%FGBVMU ,FZDIBJO %# w ֎෦͔Βͷىಈಋઢ w
1VTI௨ σΟʔϓϦϯΫ w &YUFOTJPO w 8JEHFU "QQMF8BUDIαϙʔτ w ՝ۚ
6TFS%FGBVMUͷϚΠάϨʔγϣϯ w 6TFS%FGBVMUʜJ04։ൃͰ͓ͳ͡ΈͷγϯϓϧͳLFZWBMVFετΞ w ৽ΞϓϦ͔ΒͰಉ͡Ωʔ໊Λ͑چΞϓϦͰͷใΛऔΓग़ͤΔ w ؾΛ͚ͭΔϙΠϯτ w ҙਤ͠ͳ͍چΞϓϦͷΩʔ໊ͷར༻
چΞϓϦͷΩʔ໊ͷར༻Λ࣮֬ʹ͙ w ৗʹQSF fi YΛ༩͢Δ w Ωʔ໊ͷఆٛՕॴʹ·ͱΊΑ͏
%# w چΞϓϦͰ3FBMNΛ࠾༻͍͕ͯͨ͠୭༷͔͍ͬͯͳ͍ҋ w ϚΠάϨʔγϣϯͤͣʹࣺͯΔஅ w ਏ͍ͱ͜ΖແࢹͰ͖Δͱ͍͏ͷ͕࡞Γ͠ͷັྗ w ਂ͘%#ʹґଘ͍ͯ͠ΔΞϓϦͰ͋Εͬͱେม w
͠ΔͳΒچΞϓϦͷ͏ͪʹ$PSF%BUBͳͲʹୀආͤ͞Δ࡞ઓ͋ͬͨ
1VTI௨ w 1VTIʹछྨ͕͋Δ w ϦϞʔτPSϩʔΧϧ w /PUJ fi DBUJPO4FSWJDF&YUFOTJPO w
ϝσΟΞ͖1VTI w /PUJ fi DBUJPO$POUFOU&YUFOTJPO w 1VTIৄࡉͷΧελϚΠζ
σΟʔϓϦϯΫ w σΟʔϓϦϯΫʜ8FCαΠτϝʔϧͳͲ͔ΒΞϓϦʹભҠͤ͞Δٕज़ w طଘͷ࣮ͷ౿ऻ͕ඞཁ w ۪ʹΔ
8JEHFU w 8JEHFUʜϗʔϜը໘ʹஔ͍ͯҰ෦ͷػೳΛఏڙͰ͖ΔΈ w ॳػೳͷఏڙΛΊΔͭΓ͕ͩͬͨɾɾɾ
None
8JEHFUͲ͏͢Δ w ਅͬࠇʹͳͬͯ͠·͏͜ͱ͕໌ w λοϓͯ͠Ԡ͠ͳ͍ w Λ࠶ىಈͯ͠ফ͑ͳ͍ w Ϣʔβ͕ԡͯ͠͠আ͢ΕফͤΔ
8JEHFU࡞Γ͠ w ࡞্ͬͯॻ͖͢Δ͜ͱͰରԠ w ࡞Γ͠ʹݶΒͣআͨ͠߹ൃੜ͢ΔͷͰҙ
8BUDI w ར༻ঢ়گݟͯҰ୴Ϋϩʔζ w Ξοϓσʔτ͢ΔͱࣗಈͰ"QQMF8BUDI͔Βআ͞ΕΔ w ηʔϑ
ϦϦʔε w ҆શʹϦϦʔεΛ͢ΔͨΊͷ࡞ઓ w ࣾςετ w Γ͠ΞϓϦͷ४උ w ஈ֊ϦϦʔεͷ࣮ࢪ
Γ͠ΞϓϦͷ४උ w ৽ΞϓϦͷϦϦʔεޙʹ͕ൃੜ͢Δ߹Λߟྀ w ৽ΞϓϦˠچΞϓϦʹ͢߹ͷಈ࡞֬ೝΛ࣮ࢪ w ݕ౼͕ͨ݁͠ہΒͳ͔ͬͨ͜ͱ w ৽ΞϓϦϦϦʔεޙʹچΞϓϦΛਃ͍ͯͭ͠ͰͤΔͧ࡞ઓ w
ϦδΣΫτϦεΫରԠͷίετΛߟ͑ͯ૯߹తʹΒͳ͍அ w ଞࣾࣄྫͰ͍ͬͯΔͱ͜Ζ͋Δ w ࢀߟIUUQTQSPEVDUTUJODFOUSZ