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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
TAKEDA Yuki
February 18, 2026
Programming
0
180
15年目のiOSアプリを1から作り直す技術
TAKEDA Yuki
February 18, 2026
Tweet
Share
More Decks by TAKEDA Yuki
See All by TAKEDA Yuki
特定のViewControllerを表示するときだけTabBarを隠したい
teakun
1
570
Other Decks in Programming
See All in Programming
Rubyと楽しいをつくる / Creating joy with Ruby
chobishiba
0
170
Vibe Coding - AI 驅動的軟體開發
mickyp100
0
190
izumin5210のプロポーザルのネタ探し #tskaigi_msup
izumin5210
1
200
CSC307 Lecture 09
javiergs
PRO
1
840
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
1
320
組織で育むオブザーバビリティ
ryota_hnk
0
180
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
Premier Disciplin for Micro Frontends Multi Version/ Framework Scenarios @OOP 2026, Munic
manfredsteyer
PRO
0
150
ご飯食べながらエージェントが開発できる。そう、Agentic Engineeringならね。
yokomachi
1
150
CSC307 Lecture 12
javiergs
PRO
0
430
Rails Girls Tokyo 18th GMO Pepabo Sponsor Talk
yutokyokutyo
0
130
Python’s True Superpower
hynek
0
170
Featured
See All Featured
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
340
Rails Girls Zürich Keynote
gr2m
96
14k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
120
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Navigating Weather and Climate Data
rabernat
0
120
So, you think you're a good person
axbom
PRO
2
1.9k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
220
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
130
Visualization
eitanlees
150
17k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
180
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
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