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
20
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
520
The Curse of Service Object
inem
0
240
Modern Make for modern (Rails) programmers
inem
0
70
Откуда берется сложность в Rails-проектах и куда бы её деть?
inem
0
260
Rails без боли и оверинжиниринга
inem
0
360
Painless Rails: наводим порядок в контроллерах
inem
0
240
Less Abstract! Surprising effects of expressing OOP in pictures
inem
1
540
Pure functions and side effects
inem
0
38
Solving architectural problems with OOP in pictures
inem
1
5.6k
Other Decks in Programming
See All in Programming
Kotlin 2.0 and Beyond
antonarhipov
2
150
Go1.23で入った errorsパッケージの小さなアプデ
kuro_kurorrr
2
390
オートマトン学習しろ / Do automata learning
makenowjust
3
130
RAGの回答精度評価用のQAデータセットを生成AIに作らせた話
kurahara
0
250
rails_girls_is_my_gate_to_join_the_ruby_commuinty
maimux2x
0
200
Desafios e Lições Aprendidas na Migração de Monólitos para Microsserviços em Java
jessilyneh
2
150
Modular Monolith Go Server with GraphQL Federation + gRPC
110y
1
580
Debugging: All you need to know (for simultaneous interpreting)
jmatsu
2
790
Findy - エンジニア向け会社紹介 / Findy Letter for Engineers
findyinc
4
90k
What you can do with Ruby on WebAssembly
kateinoigakukun
0
170
全部見せます! クラシルリワードのSwiftTesting移行プロジェクト
uetyo
0
210
2024 컴포즈 정원사
jisungbin
0
150
Featured
See All Featured
Building Applications with DynamoDB
mza
90
6k
Mobile First: as difficult as doing things right
swwweet
221
8.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
157
15k
WebSockets: Embracing the real-time Web
robhawkes
59
7.3k
How to Ace a Technical Interview
jacobian
274
23k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
29
2.6k
Why Our Code Smells
bkeepers
PRO
334
56k
What's in a price? How to price your products and services
michaelherold
242
11k
Writing Fast Ruby
sferik
623
60k
Six Lessons from altMBA
skipperchong
26
3.4k
GraphQLの誤解/rethinking-graphql
sonatard
65
9.8k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
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