Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Keep your architecture clean - PHPBenelux 2020
Search
Simon Mönch
January 25, 2020
Programming
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
66
Other Decks in Programming
See All in Programming
Railsバージョンを4倍にした話
optim
0
900
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
4
3.5k
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
2
1.6k
Vapor Mode でアクセシビリティは 壊れないか検証した話
fuqda
1
300
Modernizing iOS Apps
seyfoyun
0
140
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
240
Groovy as a human and AI friendly programming language
paulk
0
150
クラウドゲーミングのパフォーマンス最適化に挑む / Cloud Gaming Performance Tuning
vivion
0
310
あなたの await、OS まで届いてる? strace で覗く JavaScript の非同期
hasutosasaki
1
1.8k
[JA] Domain Modeling with Vanilla Rails: 「操作」から再考するRailsの設計論
yasaichi
4
1.7k
TanStack Vue Query と Pinia Colada から学ぶ非同期状態の型設計
aoshi
0
580
自作Discord音声botをLambda MicroVMsに移行した話 / Migrating My Discord Voice Bot to Lambda MicroVMs
akihisaikeda
0
230
Featured
See All Featured
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
620
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
540
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.9k
It's Worth the Effort
3n
188
29k
BBQ
matthewcrist
90
10k
How to build a perfect <img>
jonoalderson
1
6.2k
So, you think you're a good person
axbom
PRO
2
2.2k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
650
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
650
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
340
A Tale of Four Properties
chriscoyier
163
24k
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