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
Code Topology Notation
Search
Ivan Nemytchenko
September 12, 2024
Programming
0
140
Code Topology Notation
Ivan Nemytchenko
September 12, 2024
Tweet
Share
More Decks by Ivan Nemytchenko
See All by Ivan Nemytchenko
The Shape of a Service Object
inem
0
1.3k
The Curse of Service Object
inem
0
340
Modern Make for modern (Rails) programmers
inem
0
110
Откуда берется сложность в Rails-проектах и куда бы её деть?
inem
0
300
Rails без боли и оверинжиниринга
inem
0
560
Painless Rails: наводим порядок в контроллерах
inem
0
300
Less Abstract! Surprising effects of expressing OOP in pictures
inem
1
640
Pure functions and side effects
inem
0
58
Solving architectural problems with OOP in pictures
inem
1
6.1k
Other Decks in Programming
See All in Programming
CSC509 Lecture 02
javiergs
PRO
0
410
Conquering Massive Traffic Spikes in Ruby Applications with Pitchfork
riseshia
0
150
株式会社 Sun terras カンパニーデック
sunterras
0
240
フロントエンド開発に役立つクライアントプログラム共通のノウハウ / Universal client-side programming best practices for frontend development
nrslib
7
3.9k
非同期jobをtransaction内で 呼ぶなよ!絶対に呼ぶなよ!
alstrocrack
0
560
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
0
400
After go func(): Goroutines Through a Beginner’s Eye
97vaibhav
0
240
CSC509 Lecture 05
javiergs
PRO
0
300
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
140
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
930
Back to the Future: Let me tell you about the ACP protocol
terhechte
0
130
実践AIチャットボットUI実装入門
syumai
7
2.5k
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Git: the NoSQL Database
bkeepers
PRO
431
66k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Why Our Code Smells
bkeepers
PRO
339
57k
Practical Orchestrator
shlominoach
190
11k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
960
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Code Reviewing Like a Champion
maltzj
525
40k
Speed Design
sergeychernyshev
32
1.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
610
Transcript
CODE TOPOLOGY NOTATION
Kettle components (objects) small dudes == objects
Objects with methods! hands == methods
A method number of fi ngers == number of arguments
Instance variables Stored inside the brain
Instance variables Can be reused later
Returning results
Private methods
Exception
Anti-patterns
Too many arguments
Too many methods
Too long methods
Too many instance variables
Too much conditional logic in methods Swallen arms
Too much of everything!!!
Classes A spawning platform
Classes A spawning platform
same topology Object & classes have the
Dependencies have to remember about classes to use them
Dependency Injection Instead of remembering thing we pass them as
arguments
Visual representation of code complexity
None
None
None
None
None
None