$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Adapting Design Patterns to a Multi Paradigmati...
Search
Lia Nemeth
April 17, 2018
Programming
0
49
Adapting Design Patterns to a Multi Paradigmatic World
How to adapt the classic GOF concepts to a multi paradigm language such as Python
Lia Nemeth
April 17, 2018
Tweet
Share
Other Decks in Programming
See All in Programming
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
150
dotfiles 式年遷宮 令和最新版
masawada
1
730
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
12
7.1k
AIコードレビューがチームの"文脈"を 読めるようになるまで
marutaku
0
350
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
2
640
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
140
ローターアクトEクラブ アメリカンナイト:川端 柚菜 氏(Japan O.K. ローターアクトEクラブ 会長):2720 Japan O.K. ロータリーEクラブ2025年12月1日卓話
2720japanoke
0
720
AIコーディングエージェント(NotebookLM)
kondai24
0
170
React Native New Architecture 移行実践報告
taminif
1
150
connect-python: convenient protobuf RPC for Python
anuraaga
0
380
SwiftUIで本格音ゲー実装してみた
hypebeans
0
110
社内オペレーション改善のためのTypeScript / TSKaigi Hokuriku 2025
dachi023
1
550
Featured
See All Featured
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.3k
It's Worth the Effort
3n
187
29k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Building an army of robots
kneath
306
46k
Embracing the Ebb and Flow
colly
88
4.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Thoughts on Productivity
jonyablonski
73
5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
The Cult of Friendly URLs
andyhume
79
6.7k
The Invisible Side of Design
smashingmag
302
51k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
What's in a price? How to price your products and services
michaelherold
246
12k
Transcript
Adapting Design Patterns to a Multi Paradigmatic World Lia Nemeth
The Gang of Four (GoF) Published in 1994 Inspired by
Christopher Alexander Patterns have: - Name - Problem - Solution - Consequences
These design patterns are not universal They are closely related
to languages such as C++ and Java ¨The choice of programming language is important because it influences one's point of view." (GoF, 1994)
But knowing reusable design elements can still be useful And
some patterns can be adapted for the multi-paradigmatic and dynamic nature of Python
Do not overdo it! Actual diagram from the book
Don't be object obsessed In 1994, Object Orientation was the
shiny new thing and this influenced the GoF book
Strategy Pattern A behavioral pattern that enables selecting an algorithm
at runtime
The Strategy pattern can be easily adapted to use functions
if they are first class elements of the language.
None
Observer Pattern Very useful pattern for event handling
First class functions are again the key to make this
pattern way simpler
None
None
None
Singleton is one of the most famous design patterns It's
a class that allows a single object to be instantiated
Alex Martelli proposes Borg instead of singleton. It can have
multiple objects, but they all share state
None
Some patterns like iterator and command are already embedded in
the language
None
Conclusion Patterns can be useful, they are a great way
to communicate an idea and getting to know them can bring good solutions to problems we face But always be cautious before blindly implementing them and think creatively on how they can be used
Thank you! Code at: github.com/lianemeth/design_patterns_talk