<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Gof on wid's blog</title><link>https://wid-blog.github.io/en/tags/gof/</link><description>Recent content in Gof on wid's blog</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sun, 17 Mar 2024 00:00:00 +0000</lastBuildDate><atom:link href="https://wid-blog.github.io/en/tags/gof/index.xml" rel="self" type="application/rss+xml"/><item><title>Observer</title><link>https://wid-blog.github.io/en/posts/tech/design-pattern/observer/</link><pubDate>Sun, 17 Mar 2024 00:00:00 +0000</pubDate><guid>https://wid-blog.github.io/en/posts/tech/design-pattern/observer/</guid><description>Observer cuts coupling through a one-to-many relationship that notifies subscribers of state changes. The Subject just notifies, unaware of who listens. EventEmitter, RxJS, and event-driven architecture all extend from here. It differs from broker-mediated pub/sub.</description></item><item><title>Strategy</title><link>https://wid-blog.github.io/en/posts/tech/design-pattern/strategy/</link><pubDate>Sun, 03 Mar 2024 00:00:00 +0000</pubDate><guid>https://wid-blog.github.io/en/posts/tech/design-pattern/strategy/</guid><description>Strategy encapsulates a family of algorithms behind a single interface and swaps them at runtime. It extends by adding a strategy instead of editing an if/switch. In languages with first-class functions, a separate Strategy class collapses into a single function.</description></item><item><title>Facade</title><link>https://wid-blog.github.io/en/posts/tech/design-pattern/facade/</link><pubDate>Sun, 25 Feb 2024 00:00:00 +0000</pubDate><guid>https://wid-blog.github.io/en/posts/tech/design-pattern/facade/</guid><description>Facade provides a simple entry point to a complex subsystem, cutting the coupling between the client and the internals. A service layer or a library SDK is effectively a Facade. It differs from Adapter (interface conversion) and Mediator (two-way coordination).</description></item><item><title>Decorator</title><link>https://wid-blog.github.io/en/posts/tech/design-pattern/decorator/</link><pubDate>Sun, 18 Feb 2024 00:00:00 +0000</pubDate><guid>https://wid-blog.github.io/en/posts/tech/design-pattern/decorator/</guid><description>Decorator replaces the subclass explosion of inheritance with composition. It stacks wrappers that keep the same interface to add behavior at runtime. java.io, Python function decorators, and web middleware chains are all variations on the same intent.</description></item></channel></rss>