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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
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
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
120
コンパウンドプロダクト開発のためのローカルプロセスマネージャー再発明 #layerxgo
izumin5210
0
160
How I Won Prize Money at a Hackathon Using Codex and Symphony Alpha
yasei_no_otoko
0
120
書籍「プロフェッショナルAI駆動開発」紹介スライド
juntaromatsumoto
0
290
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
510
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
4
1.7k
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
350
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
240
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
1
260
生成AIで帳票OCRが「簡単に」作れる時代になった?
kon_shou
0
1.1k
Loosening the Reins: Go Generics Get More Flexible
kuro_kurorrr
0
280
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
370
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
247
13k
Producing Creativity
orderedlist
PRO
348
40k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
680
Building Applications with DynamoDB
mza
96
7.2k
We Are The Robots
honzajavorek
0
310
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
220
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
540
Building an army of robots
kneath
306
46k
Un-Boring Meetings
codingconduct
0
390
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
300
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: