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
Keep your architecture clean - PHPBenelux 2020
Search
Simon Mönch
January 25, 2020
Programming
320
0
Share
Keep your architecture clean - PHPBenelux 2020
Simon Mönch
January 25, 2020
More Decks by Simon Mönch
See All by Simon Mönch
Keep you architecture clean
smoench
0
56
Other Decks in Programming
See All in Programming
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
480
Explore CoroutineScope
tomoeng11
0
120
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
4
1.1k
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
160
ソフトウェア設計の結合バランス #phperkaigi
kajitack
0
160
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
2.7k
Agentic Elixir
whatyouhide
0
420
Road to RubyKaigi: Play Hard(ware)
makicamel
1
500
GoogleCloudとterraform完全に理解した
terisuke
1
170
How Swift's Type System Guides AI Agents
koher
0
320
UIの境界線をデザインする | React Tokyo #15 メイントーク
sasagar
2
400
Making the RBS Parser Faster
soutaro
0
610
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Unsuck your backbone
ammeep
672
58k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
110
KATA
mclloyd
PRO
35
15k
Prompt Engineering for Job Search
mfonobong
0
280
Odyssey Design
rkendrick25
PRO
2
590
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Being A Developer After 40
akosma
91
590k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
490
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Transcript
@smoench89 Keep your architecture clean 1
@smoench89 Agenda • What is software architecture about? • Example
application • Track application layers and enforce rules 2
@smoench89 Simon Mönch @smoench89 Symfony User Group Cologne Organizer 3
@smoench89 What is software architecture about? 4
@smoench89 What is software architecture about? • Communication ‣ Requirements
‣ Decisions ‣ Agreements 5
@smoench89 –Ralph Johnson „Architecture is about the important stuff. Whatever
that is.“ 6
@smoench89 Example 7 • API driven • Admin and Customer
API • Easily extendable with other APIs / 3rd Party Integrations • Keep in mind a API context could spilt out to its own service
@smoench89 Hexagonal architecture Ports and adapter architecture 8
@smoench89 9 Core Admin Customer Driven Driving
@smoench89 Application 10
@smoench89 Deptrac https://github.com/sensiolabs-de/deptrac 11
@smoench89 Installation ✓ PHAR | https://github.com/sensiolabs-de/deptrac/releases ✓ phive install -g
sensiolabs-de/deptrac ✓ composer require --dev sensiolabs-de/deptrac-shim X composer require --dev sensiolabs-de/deptrac 12
@smoench89 depfile.yml 13
@smoench89 14
@smoench89 15
@smoench89 Formatters 16
@smoench89 Console 17
@smoench89 Graphviz 18
@smoench89 JUnit 19
@smoench89 Layers & Collectors 20
@smoench89 className 21
@smoench89 classNameRegex 22
@smoench89 directory 23
@smoench89 bool 24
@smoench89 Demo 25
@smoench89 Conclusions 26
@smoench89 Thank you @smoench89 https://joind.in/talk/017e5 27