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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Samuel Goodwin
March 09, 2012
Programming
3.1k
1
Share
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
CSC307 Lecture 17
javiergs
PRO
0
270
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
4
1.2k
New "Type" system on PicoRuby
pocke
1
360
GitHub Copilot CLIのいいところ
htkym
2
1.2k
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.2k
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
1
510
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
190
Hive Metastoreを通して学ぶIceberg REST Catalog ― 仕様から実装まで
okumin
0
300
Oxlintはいかにしてtsgolintのlint ruleを呼び出しているのか
syumai
2
1k
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
120
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
2
4k
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
410
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
590
Leo the Paperboy
mayatellez
7
1.8k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
370
Code Reviewing Like a Champion
maltzj
528
40k
Are puppies a ranking factor?
jonoalderson
1
3.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
370
Bash Introduction
62gerente
615
210k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.5k
AI: The stuff that nobody shows you
jnunemaker
PRO
7
670
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: