Facade is a structural design pattern that provides a simplified interface to a complex system of classes, libraries or frameworks. It's like the front desk at a hotel - you just talk to the receptionist to book a room instead of individually coordinating with the cleaning staff, maintenance crew, and management team.
Did you see that new facade they put on the legacy codebase? It's like putting lipstick on a pig - might look prettier, but it's still a mess under the hood. Oh great, the sales team wants us to build a "simple" facade for the customer portal - I'm sure it won't take long, just like that "quick" refactor last quarter...
Martin Fowler has an oldie-but-goodie article on Presentation Domain Separation that dives into the benefits of keeping your UI logic decoupled from your core business logic. It's from 2003 but still holds up - unlike most of the code I wrote back then.
For a more recent take, check out this piece on modularizing React apps using established UI patterns. Because apparently Facebook engineers struggle with messy frontends too - maybe that's why they keep changing the newsfeed layout.
If you really want to nerd out, there's always the classic GUI Architectures overview. It's a bit academic, but a good history lesson on how we ended up with the UI patterns we use today. Perfect for boring your coworkers at the next happy hour.
Note: the Developer Dictionary is in Beta. Please direct feedback to skye@statsig.com.