Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Refactoring and stuff
Search
Samuel Goodwin
March 09, 2012
Programming
1
3k
Refactoring and stuff
My first talk as presented to the NYC Cocoaheads group.
Samuel Goodwin
March 09, 2012
Tweet
Share
Other Decks in Programming
See All in Programming
20 years of Symfony, what's next?
fabpot
2
300
WebRTC、 綺麗に見るか滑らかに見るか
sublimer
1
140
AWS CDKの推しポイントN選
akihisaikeda
1
230
『実践MLOps』から学ぶ DevOps for ML
nsakki55
2
540
【CA.ai #3】Google ADKを活用したAI Agent開発と運用知見
harappa80
0
240
Herb to ReActionView: A New Foundation for the View Layer @ San Francisco Ruby Conference 2025
marcoroth
0
240
Google Antigravity and Vibe Coding: Agentic Development Guide
mickey_kubo
2
130
AIコーディングエージェント(Gemini)
kondai24
0
110
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
2.9k
非同期処理の迷宮を抜ける: 初学者がつまづく構造的な原因
pd1xx
1
420
認証・認可の基本を学ぼう前編
kouyuume
0
150
MAP, Jigsaw, Code Golf 振り返り会 by 関東Kaggler会|Jigsaw 15th Solution
hasibirok0
0
200
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Mobile First: as difficult as doing things right
swwweet
225
10k
Faster Mobile Websites
deanohume
310
31k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Being A Developer After 40
akosma
91
590k
Code Review Best Practice
trishagee
73
19k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
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: