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
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
AIフル活用時代だからこそ学んでおきたい働き方の心得
shinoyu
0
140
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
200
高速開発のためのコード整理術
sutetotanuki
1
410
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
1
160
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
[KNOTS 2026登壇資料]AIで拡張‧交差する プロダクト開発のプロセス および携わるメンバーの役割
hisatake
0
290
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.3k
「ブロックテーマでは再現できない」は本当か?
inc2734
0
1k
AI時代の認知負荷との向き合い方
optfit
0
160
AtCoder Conference 2025
shindannin
0
1.1k
CSC307 Lecture 04
javiergs
PRO
0
660
Fluid Templating in TYPO3 14
s2b
0
130
Featured
See All Featured
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
380
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
97
Thoughts on Productivity
jonyablonski
74
5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Context Engineering - Making Every Token Count
addyosmani
9
660
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
830
How to Talk to Developers About Accessibility
jct
2
130
The Cost Of JavaScript in 2023
addyosmani
55
9.5k
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