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
Refactoring and stuff
Search
Samuel Goodwin
March 09, 2012
Programming
3.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Refactoring and stuff
My first talk as presented to the NYC Cocoaheads group.
Samuel Goodwin
March 09, 2012
Other Decks in Programming
See All in Programming
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
530
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
120
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
260
Claspは野良GASの夢をみるか
takter00
0
190
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
250
AI 輔助遺留系統現代化的經驗分享
jame2408
1
130
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.7k
Oxlintのカスタムルールの現況
syumai
6
1.1k
ふつうのFeature Flag実践入門
irof
7
4k
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
6
1.3k
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
350
3Dシーンの圧縮
fadis
1
770
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Faster Mobile Websites
deanohume
310
31k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
Deep Space Network (abreviated)
tonyrice
0
170
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
sira's awesome portfolio website redesign presentation
elsirapls
0
280
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
540
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
150
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Transcript
Samuel Goodwin @samuelgoodwin Refactoring and Stuff
What is refactoring? • Changing code without changing code behavior.
Why refactor? • Code is for humans • Nobody's perfect
• Requirements change
When to refactor? • When it smells • When code
becomes too rigid • Maybe not before deadlines • Sometimes not at all ( nuke and pave! )
How to refactor? • Step 0: Use version control!
Objc_dep ( github.com/nst/objc_dep )
Delete
MVC Ideally...
What to aim for? • Single responsibility principle • Open/closed
principle • Liskov Substitution principle • Interface segregation principle • Dependency inversion principle
• Coding Guidelines for Cocoa • Concepts in Objective-C Programming
• Cocoa Fundamentals Guide From the guys who brought you Cocoa: