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
リリースビルドでのみ起こる謎のバグに見舞われた話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
PKPK-Carnage
September 17, 2019
Programming
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
リリースビルドでのみ起こる謎のバグに見舞われた話
PKPK-Carnage
September 17, 2019
More Decks by PKPK-Carnage
See All by PKPK-Carnage
iOSアプリを堅牢にデザインするために知っておくべきたった1つのこと
pkpkcarnage
0
510
アプリへの導線の増やし方.pdf
pkpkcarnage
0
750
「シェア機能」について考えてみた
pkpkcarnage
0
120
Any型をprotocolにキャストする時に 気をつけた方がいい話
pkpkcarnage
0
310
今日から使える! Optionalをいい感じに扱うtips
pkpkcarnage
0
1.3k
もっと早く教えて欲しかった画面遷移
pkpkcarnage
0
370
iOSの通信処理を簡潔に書く
pkpkcarnage
0
320
Other Decks in Programming
See All in Programming
Modding RubyKaigi for Myself
yui_knk
0
910
The NotImplementedError Problem in Ruby
koic
1
660
Claspは野良GASの夢をみるか
takter00
0
180
さぁV100、メモリをお食べ・・・
nilpe
0
130
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
4
1.4k
AIとRubyの静的型付け
ukin0k0
0
550
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.9k
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
550
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
460
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
210
net-httpのHTTP/2対応について
naruse
0
460
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
770
Featured
See All Featured
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
200
The Curious Case for Waylosing
cassininazir
1
380
Ruling the World: When Life Gets Gamed
codingconduct
0
250
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
Building the Perfect Custom Keyboard
takai
2
790
Writing Fast Ruby
sferik
630
63k
The browser strikes back
jonoalderson
0
1.2k
So, you think you're a good person
axbom
PRO
2
2.1k
Optimising Largest Contentful Paint
csswizardry
37
3.7k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
210
Transcript
ϦϦʔεϏϧυͰͷΈى͜Δ ṖͷόάʹݟΘΕͨ 2019/9/17 ͋Δ͋ΔLTʙεϚϗΞϓϦ։ൃΤϯδχΞʙ Vol.6 1
About me • iOSྺ3 • μϒϧϑϩοά • Qiita → @fr0g_fr0g
• Github → Frog-Frog • Twitter → @fr0g_fr0g
ͱ͋ΔΞϓϦɺόάΒͤͯ͏ͨ 3
Կ͕όά͍ͬͯͨͷ͔ʁ 4
Կ͕όά͍ͬͯͨͷ͔ʁ 5
දࣔ͞ΕΔͣͷʮUPʯͷը૾͕ग़ͯͳ͍ 6
͙֬͢ೝ͠·͢ 7
͋Εʁ 8
ͪΌΜͱग़ͯΔ 9
ϦϦʔε൛ͰϏϧυͯ͠ΈΔ 10
11
Ͳ͏ΒϦϦʔε൛ͷϏϧυʹͳΔͱग़ͳ͍ͬΆ͍ 12
ߟ͑ΒΕΔݪҼ • ίʔυ͕ؒҧͬͯΔ • αʔόʔ͔ΒͷϨεϙϯε͕ਖ਼͘͠ͳ͍ • ը૾ͷϦιʔε͕ൈ͚མͪͯΔ 13
ίʔυ͕ؒҧͬͯΔʁ 14 enum AppearanceType { case none case new case
update case smallUpdate case freeVolume(Int) init(_ badge: TitleBadge) { switch badge { case .none, .unrecognized: self = .none case .new: self = .new case .update: self = .update } } }
ؒҧͬͯͳͦ͞͏ 15
ߟ͑ΒΕΔݪҼ • ίʔυ͕ؒҧͬͯΔ • αʔόʔ͔ΒͷϨεϙϯε͕ਖ਼͘͠ͳ͍ • ը૾ͷϦιʔε͕ൈ͚མͪͯΔ 16
αʔόʔ͔ΒͷϨεϙϯε͕ਖ਼͘͠ͳ͍ʁ 17 enum AppearanceType { case none case new case
update case smallUpdate case freeVolume(Int) init(_ badge: TitleBadge) { switch badge { case .none, .unrecognized: self = .none case .new: self = .new case .update: self = .update } } }
αʔόʔ͔ΒͷϨεϙϯε͕ਖ਼͘͠ͳ͍ʁ 18
ఆ௨Γͷσʔλ͕ೖ͖ͬͯͯΔ 19
ߟ͑ΒΕΔݪҼ • ίʔυ͕ؒҧͬͯΔ • αʔόʔ͔ΒͷϨεϙϯε͕ਖ਼͘͠ͳ͍ • ը૾ͷϦιʔε͕ൈ͚མͪͯΔ 20
ը૾ͷϦιʔε͕ൈ͚མͪͯΔʁ 21 ΞϓϦͷλʔήοτ
ͪΌΜͱϦιʔεؚ·ΕͯΔ 22
ߟ͑ΒΕΔݪҼ • ίʔυ͕ؒҧͬͯΔ • αʔόʔ͔ΒͷϨεϙϯε͕ਖ਼͘͠ͳ͍ • ը૾ͷϦιʔε͕ൈ͚མͪͯΔ • Xcode͕όάͬͯΔͷͰɾɾɾʁ 23
24
Xcode͕όάͬͯΔʁ • σϑΥϧτͰReleaseϏϧυʹઃఆ͞Ε͍ͯΔ࠷దԽΛߦ͏ࡍʹό ά͕ൃੜ͢Δ • ReleaseϏϧυͷOptimization LevelΛNoneʹઃఆ͢Δͱਖ਼͘͠ಈ͘ • ύϑΥʔϚϯεʹӨڹ͕ग़ΔͷͰɺ͕͢͞ʹΓͨ͘ͳ͍ɻ •
Xcode10.2ͰͷΈى͜Δ 25
26
27
Ξοϓσʔτͨ͠ΒͪΌΜͱͬͨɾɾɾ 28
·ͱΊ • Xcode10.2࠷దԽ(Optimization Level)ʹόά͕͋ΓɺͦΕʹΑͬͯ ࠷దԽͨ͠ϏϧυͰఆ֎ͷಈ࡞Λ͢Δ͜ͱ͕͋Δ • ࠓճදࣔ͞ΕΔͣͷͷ͕ɺදࣔ͞Εͳ͍͚ͩͰࡁΜ͕ͩɺࠜװ ʹؔΘΔϩδοΫͩͱͦ͏ͳόάͩͬͨ • ݕূதDebugϏϧυͰಈ࡞֬ೝ͍ͯͨͨ͠Ίɺൃݟ͕Εͨ
• XcodeͷΞοϓσʔτΛͪΌΜͱ֬ೝ͠Α͏ 29
͓ΘΓ 30