Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Refactoring and stuff
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
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
スマートフォンでモールス信号を送受信する 〜スマートフォンのLEDとカメラで作る光通信の設計と実装〜
atsuki_seo
0
210
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
230
FreeBSDでZabbixを動かす
kenkino
0
340
Workers Cache を知る
syumai
0
310
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
2.2k
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
3k
AWSに止められる覚悟してますか?
morizo_1984
2
480
Turning Architecture into Unit Tests in the AI Era (NSSpain XIV)
steliosf
PRO
1
110
カツオ、ご期待ください
suneo3476
0
110
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
410
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
140
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
720
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
41
2.7k
My Coaching Mixtape
mlcsv
0
330
The Curious Case for Waylosing
cassininazir
1
540
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
250
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
330
Joys of Absence: A Defence of Solitary Play
codingconduct
1
530
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
530
[SF Ruby Conf 2025] Rails X
palkan
3
1.4k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.1k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
560
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
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: