<?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>Design-Patterns on Karpoke - Just Another Blog</title><link>http://karpoke.ignaciocano.com/tags/design-patterns/</link><description>Recent content in Design-Patterns on Karpoke - Just Another Blog</description><generator>Hugo -- 0.167.0</generator><language>es</language><lastBuildDate>Wed, 08 Nov 2023 15:01:00 +0100</lastBuildDate><atom:link href="http://karpoke.ignaciocano.com/tags/design-patterns/index.xml" rel="self" type="application/rss+xml"/><item><title>A better explanation of the Liskov Substitution Principle</title><link>http://karpoke.ignaciocano.com/2023/11/08/a-better-explanation-of-the-liskov-substitution-principle/</link><pubDate>Wed, 08 Nov 2023 15:01:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2023/11/08/a-better-explanation-of-the-liskov-substitution-principle/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Short version: If X inherits from Y, then X should pass all of Y’s black
box tests. I first encountered this idea at SPLASH 2021. The longer
explanation A bit of background In A Behavioral Notion of Subtyping
Liskov originally defined subtyping in inherited objects as follows: …&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» Hillel Wayne | &lt;a href="https://www.hillelwayne.com/post/lsp/"&gt;hillelwayne.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>What is SOLID? Principles for Better Software Design</title><link>http://karpoke.ignaciocano.com/2023/05/03/what-is-solid-principles-for-better-software-design/</link><pubDate>Wed, 03 May 2023 15:52:17 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2023/05/03/what-is-solid-principles-for-better-software-design/</guid><description>&lt;blockquote&gt;
&lt;p&gt;The SOLID principles are a set of guidelines for writing high-quality,
maintainable, and scalable software. They were introduced by Robert C.
Martin in his 2000 paper “Design Principles and Design Patterns” to help
developers write software that is &amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» ashutoshkrris | &lt;a href="https://www.freecodecamp.org/news/solid-principles-for-better-software-design/"&gt;freecodecamp.org&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Pub/Sub in Redis – How to Use the Publish/Subscribe Messaging Pattern</title><link>http://karpoke.ignaciocano.com/2023/04/29/pub-sub-in-redis-how-to-use-the-publish-subscribe-messaging-pattern/</link><pubDate>Sat, 29 Apr 2023 09:03:40 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2023/04/29/pub-sub-in-redis-how-to-use-the-publish-subscribe-messaging-pattern/</guid><description>&lt;blockquote&gt;
&lt;p&gt;When you&amp;rsquo;re working on an application that needs to be easily
maintainable, scalable, and performant, the Publish/Subscribe messaging
pattern is a good choice. The idea behind it is simple, but powerful. We
have senders called publishers. Their sole &amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» freeCodeCamp.org | &lt;a href="https://www.freecodecamp.org/news/how-to-use-pub-sub-in-redis/"&gt;freecodecamp.org&lt;/a&gt;&lt;/p&gt;</description></item><item><title>From Problems to Solutions: Understanding Design Patterns</title><link>http://karpoke.ignaciocano.com/2023/03/29/from-problems-to-solutions-understanding-design-patterns/</link><pubDate>Wed, 29 Mar 2023 15:17:05 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2023/03/29/from-problems-to-solutions-understanding-design-patterns/</guid><description>&lt;blockquote&gt;
&lt;p&gt;An interesting fact in software development is that you are almost
always not the first person to&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/documatic/from-problems-to-solutions-understanding-design-patterns-3b7i"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>How to eliminate if-else chain, for long life software</title><link>http://karpoke.ignaciocano.com/2022/10/18/how-to-eliminate-if-else-chain-for-long-life-software/</link><pubDate>Tue, 18 Oct 2022 16:54:49 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2022/10/18/how-to-eliminate-if-else-chain-for-long-life-software/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Motivation All programing principles and paradigms aim to enhance code
readability and&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/smuhammed/how-to-eliminate-if-else-chain-for-long-life-software-3ea3"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Fixed Partitions</title><link>http://karpoke.ignaciocano.com/2022/08/23/fixed-partitions/</link><pubDate>Tue, 23 Aug 2022 16:58:34 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2022/08/23/fixed-partitions/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Keep the number of partitions fixed to keep the mapping of data to
partition unchanged when the size of a cluster changes.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» martinfowler.com | &lt;a href="https://martinfowler.com/articles/patterns-of-distributed-systems/fixed-partitions.html"&gt;martinfowler.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>SOLID Principles</title><link>http://karpoke.ignaciocano.com/2021/11/24/solid-principles/</link><pubDate>Wed, 24 Nov 2021 21:48:40 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/11/24/solid-principles/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Solid Principles Object Oriented Design principles The following link
contain examples for every&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/csahmed2020/solid-principles-2jc3"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Adapter Pattern vs. Bridge Pattern</title><link>http://karpoke.ignaciocano.com/2021/10/04/adapter-pattern-vs-bridge-pattern/</link><pubDate>Mon, 04 Oct 2021 11:24:04 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/10/04/adapter-pattern-vs-bridge-pattern/</guid><description>&lt;blockquote&gt;
&lt;p&gt;The Adapter pattern and the Bridge Pattern have brought along a lot of
confusion. In this post we&amp;rsquo;re&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/doekenorg/adapter-pattern-vs-bridge-pattern-11nd"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Design Patterns: Composite</title><link>http://karpoke.ignaciocano.com/2021/09/06/design-patterns-composite/</link><pubDate>Mon, 06 Sep 2021 10:53:47 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/09/06/design-patterns-composite/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Composite is one of the easier patterns in this series, but this does
not mean it&amp;rsquo;s not popular. In&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/tamerlang/design-patterns-composite-39g7"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Gateway Pattern</title><link>http://karpoke.ignaciocano.com/2021/08/11/gateway-pattern/</link><pubDate>Wed, 11 Aug 2021 12:29:34 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/08/11/gateway-pattern/</guid><description>&lt;blockquote&gt;
&lt;p&gt;An object that encapsulates access to an external system or resource&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» martinfowler.com | &lt;a href="https://martinfowler.com/articles/gateway-pattern.html"&gt;martinfowler.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Design Patterns: Adapter</title><link>http://karpoke.ignaciocano.com/2021/08/09/design-patterns-adapter/</link><pubDate>Mon, 09 Aug 2021 11:54:20 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/08/09/design-patterns-adapter/</guid><description>&lt;blockquote&gt;
&lt;p&gt;In the last article, we have finished the first chapter in our design
pattern series. Today, we&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/tamerlang/design-patterns-adapter-36d9"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>SOLID: Dependency Inversion Principle</title><link>http://karpoke.ignaciocano.com/2021/08/05/solid-dependency-inversion-principle/</link><pubDate>Thu, 05 Aug 2021 12:30:30 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/08/05/solid-dependency-inversion-principle/</guid><description>&lt;blockquote&gt;
&lt;p&gt;This is the last article about the SOLID principles and in my opinion
the most important one&amp;hellip;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/victorpinzon1988eng/solid-dependency-inversion-principle-5f8m"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Inversion of Inversion of Control</title><link>http://karpoke.ignaciocano.com/2021/07/25/inversion-of-inversion-of-control/</link><pubDate>Sun, 25 Jul 2021 08:55:16 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/07/25/inversion-of-inversion-of-control/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Inversion of Control is a common phenomenon that you come across when
extending frameworks. Indeed&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/3shain/inversion-of-inversion-of-control-212p"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Interface Segregation Principle</title><link>http://karpoke.ignaciocano.com/2021/07/15/interface-segregation-principle/</link><pubDate>Thu, 15 Jul 2021 14:38:25 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/07/15/interface-segregation-principle/</guid><description>&lt;blockquote&gt;
&lt;p&gt;The Interface Segregation Principle (ISP) states: A client should not
implement interfaces that are&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/eduardojuliao/interface-segregation-principle-898"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Liskov substitution principle</title><link>http://karpoke.ignaciocano.com/2021/07/15/liskov-substitution-principle/</link><pubDate>Thu, 15 Jul 2021 14:38:23 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/07/15/liskov-substitution-principle/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Created by created by Barbara Liskov and Jeannette Wing, the Liskov
Substitution Principle or (LSP&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/eduardojuliao/liskov-substitution-principle-4a0a"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Dependency Inversion Principle</title><link>http://karpoke.ignaciocano.com/2021/07/15/dependency-inversion-principle/</link><pubDate>Thu, 15 Jul 2021 14:38:18 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/07/15/dependency-inversion-principle/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Dependency Inversion Principle (DIP for short) states: One should depend
upon abstractions and&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/eduardojuliao/dependency-inversion-principle-13je"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Design Patterns: Builder</title><link>http://karpoke.ignaciocano.com/2021/07/05/design-patterns-builder/</link><pubDate>Mon, 05 Jul 2021 14:30:02 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/07/05/design-patterns-builder/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Welcome back to our series on design patterns. This week are tackling
the Builder pattern. It&amp;rsquo;s&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/tamerlang/design-patterns-builder-3e2g"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Design Patterns: Abstract Factory</title><link>http://karpoke.ignaciocano.com/2021/06/20/design-patterns-abstract-factory/</link><pubDate>Sun, 20 Jun 2021 11:06:16 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/06/20/design-patterns-abstract-factory/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Abstract Factory? For the longest time, this pattern was very confusing
to me. But through blood,&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/tamerlang/design-patterns-abstract-factory-1i0n"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>SOLID: Interface Segregation Principle</title><link>http://karpoke.ignaciocano.com/2021/06/17/solid-interface-segregation-principle/</link><pubDate>Thu, 17 Jun 2021 18:15:32 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/06/17/solid-interface-segregation-principle/</guid><description>&lt;blockquote&gt;
&lt;p&gt;This principle was developed by Robert C. Martin while working at Xerox
as a consultant. Martin was&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/victorpinzon1988eng/solid-interface-segregation-principle-31c2"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>S.O.L.I.D Principle - Open Closed Principle (OCP)</title><link>http://karpoke.ignaciocano.com/2021/06/15/s-o-l-i-d-principle-open-closed-principle-ocp/</link><pubDate>Tue, 15 Jun 2021 11:36:38 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/06/15/s-o-l-i-d-principle-open-closed-principle-ocp/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Open Closed Principle ini dapat didefinisikan sebagai berikut: 💡
Software entities (classes,&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/amalhanaja/s-o-l-i-d-principle-open-closed-principle-ocp-4a7k"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Top 5 Distributed System Design Patterns</title><link>http://karpoke.ignaciocano.com/2021/06/14/top-5-distributed-system-design-patterns/</link><pubDate>Mon, 14 Jun 2021 11:39:46 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/06/14/top-5-distributed-system-design-patterns/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Distributed applications are a staple of the modern software development
industry. They&amp;rsquo;re pivotal to&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/educative/top-5-distributed-system-design-patterns-4d21"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>SOLID: Principio de Segregación de Interfaces</title><link>http://karpoke.ignaciocano.com/2021/05/24/solid-principio-de-segregacion-de-interfaces/</link><pubDate>Mon, 24 May 2021 21:10:14 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2021/05/24/solid-principio-de-segregacion-de-interfaces/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Este principio fue desarrollado por Robert C. Martin mientras trabajaba
como consultor en Xerox. Dura&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/victorpinzon198/solid-principio-de-segregacion-de-interfaces-1018"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>The SOLID Object-Oriented Design Principles</title><link>http://karpoke.ignaciocano.com/2020/11/20/the-solid-object-oriented-design-principles/</link><pubDate>Fri, 20 Nov 2020 17:36:20 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/11/20/the-solid-object-oriented-design-principles/</guid><description>&lt;blockquote&gt;
&lt;p&gt;The SOLID design principles are five key principles that are used to
design and structure a Class in&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/sathish/the-solid-object-oriented-design-principles-4e7o"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Design Patterns: Flyweight Pattern ⚖️</title><link>http://karpoke.ignaciocano.com/2020/11/01/design-patterns-flyweight-pattern/</link><pubDate>Sun, 01 Nov 2020 15:07:02 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/11/01/design-patterns-flyweight-pattern/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Photo by Johann Walter Bantz on Unsplash The Flyweight design pattern is
a structural design pattern&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/shubhamzanwar/design-patterns-flyweight-pattern-27a1"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>The five SOLID priciples and why you should use them in your codebase</title><link>http://karpoke.ignaciocano.com/2020/10/23/the-five-solid-priciples-and-why-you-should-use-them-in-your-codebase/</link><pubDate>Fri, 23 Oct 2020 21:16:55 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/10/23/the-five-solid-priciples-and-why-you-should-use-them-in-your-codebase/</guid><description>&lt;blockquote&gt;
&lt;p&gt;SOLID outlines a group of guidelines that developers can use to simplify
and clarify their code. Whil&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/tomgreen/the-five-solid-priciples-and-why-you-should-use-them-in-your-codebase-2f3n"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Design Patterns: Facade Pattern 🎭</title><link>http://karpoke.ignaciocano.com/2020/10/18/design-patterns-facade-pattern/</link><pubDate>Sun, 18 Oct 2020 10:57:31 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/10/18/design-patterns-facade-pattern/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Cover photo by Silvio Kundt on Unsplash The facade pattern is a
structural design pattern, commonly&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/shubhamzanwar/design-patterns-facade-pattern-9pb"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>S.O.L.I.D. Software Design Principles To Help You Become A Better Developer</title><link>http://karpoke.ignaciocano.com/2020/10/07/s-o-l-i-d-software-design-principles-to-help-you-become-a-better-developer/</link><pubDate>Wed, 07 Oct 2020 16:31:33 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/10/07/s-o-l-i-d-software-design-principles-to-help-you-become-a-better-developer/</guid><description>&lt;blockquote&gt;
&lt;p&gt;S.O.L.I.D. Software Design Principles To Help You Become A Better Developer&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» hackernoon.com | &lt;a href="https://hackernoon.com/solid-software-design-principles-to-help-you-become-a-better-developer-v13j3woa"&gt;hackernoon.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Factory Pattern 🏭</title><link>http://karpoke.ignaciocano.com/2020/10/01/factory-pattern/</link><pubDate>Thu, 01 Oct 2020 21:54:38 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/10/01/factory-pattern/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Factory pattern is a commonly used creational design pattern. It is
normally used when the user is ex&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/shubhamzanwar/factory-pattern-4hd0"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Software Development Best Practices</title><link>http://karpoke.ignaciocano.com/2020/09/06/software-development-best-practices/</link><pubDate>Sun, 06 Sep 2020 09:50:44 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/09/06/software-development-best-practices/</guid><description>&lt;blockquote&gt;
&lt;p&gt;A list of software development best practices&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/nirajkvinit/software-development-general-best-practices-1747"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Distributed Systems Pattern: Low-Water Mark</title><link>http://karpoke.ignaciocano.com/2020/08/29/distributed-systems-pattern-low-water-mark/</link><pubDate>Sat, 29 Aug 2020 19:59:27 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/08/29/distributed-systems-pattern-low-water-mark/</guid><description>&lt;blockquote&gt;
&lt;p&gt;An index in the write-ahead log showing which portion of the log can be
discarded.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» martinfowler.com | &lt;a href="https://martinfowler.com/articles/patterns-of-distributed-systems/low-watermark.html"&gt;martinfowler.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Distributed Systems Pattern: Request Pipeline</title><link>http://karpoke.ignaciocano.com/2020/08/29/distributed-systems-pattern-request-pipeline/</link><pubDate>Sat, 29 Aug 2020 19:59:21 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/08/29/distributed-systems-pattern-request-pipeline/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Improve latency by sending multiple requests on the connection without
waiting for the response of the previous requests.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» martinfowler.com | &lt;a href="https://martinfowler.com/articles/patterns-of-distributed-systems/request-pipeline.html"&gt;martinfowler.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Distributed Systems Pattern: Singular Update Queue</title><link>http://karpoke.ignaciocano.com/2020/08/29/distributed-systems-pattern-singular-update-queue/</link><pubDate>Sat, 29 Aug 2020 19:59:21 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/08/29/distributed-systems-pattern-singular-update-queue/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Use a single thread to process requests asynchronously to maintain order
without blocking the caller.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» martinfowler.com | &lt;a href="https://martinfowler.com/articles/patterns-of-distributed-systems/singular-update-queue.html"&gt;martinfowler.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Data Transfer Object (DTO) un concepto clave</title><link>http://karpoke.ignaciocano.com/2020/08/29/data-transfer-object-dto-un-concepto-clave/</link><pubDate>Sat, 29 Aug 2020 14:22:51 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/08/29/data-transfer-object-dto-un-concepto-clave/</guid><description>&lt;blockquote&gt;
&lt;p&gt;El uso de DTO o Data Transfer Object es uno de los conceptos más
habituales a nivel de Arquitectura cuando devolvemos en nuestros
servicios estructuras de dato&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» Cecilio Álvarez Caules | &lt;a href="https://www.arquitecturajava.com/data-transfer-object-dto-un-concepto-clave/"&gt;arquitecturajava.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Distributed Systems Pattern: Segmented Log</title><link>http://karpoke.ignaciocano.com/2020/08/15/distributed-systems-pattern-segmented-log/</link><pubDate>Sat, 15 Aug 2020 11:16:01 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/08/15/distributed-systems-pattern-segmented-log/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Split log into multiple smaller files instead of a single large file for
easier operations.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» martinfowler.com | &lt;a href="https://martinfowler.com/articles/patterns-of-distributed-systems/log-segmentation.html"&gt;martinfowler.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Memento Design Pattern Overview</title><link>http://karpoke.ignaciocano.com/2020/06/12/memento-design-pattern-overview/</link><pubDate>Fri, 12 Jun 2020 17:21:40 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/06/12/memento-design-pattern-overview/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Memento design pattern is a software design pattern that is used to roll
back an object to its previous state. It is a part of the behavioural
design pattern which is concerned with algorithms and assignment of
responsibilities between objects.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» hackernoon.com | &lt;a href="https://hackernoon.com/memento-design-pattern-overview-4r7p3wol"&gt;hackernoon.com&lt;/a&gt;&lt;/p&gt;</description></item><item><title>FizzBuzz Refactoring Challenge with Open/Closed Principle</title><link>http://karpoke.ignaciocano.com/2020/06/04/fizzbuzz-refactoring-challenge-with-open-closed-principle/</link><pubDate>Thu, 04 Jun 2020 21:07:28 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/06/04/fizzbuzz-refactoring-challenge-with-open-closed-principle/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Introduction Have you ever heard of the FizzBuzz refactoring challenge?
I encountered it&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/olivermensahdev/fizzbuzz-refactoring-challenge-with-open-closed-principle-4m42"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Design Patterns Everyday</title><link>http://karpoke.ignaciocano.com/2020/05/23/design-patterns-everyday/</link><pubDate>Sat, 23 May 2020 15:04:07 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2020/05/23/design-patterns-everyday/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Photo by Flo P on Unsplash Originally posted on my site Hey folks! few
weeks ago i started a new&amp;hellip;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» DEV Community | &lt;a href="https://dev.to/anuraghazra/design-patterns-everyday-53m0"&gt;dev.to&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Design Patterns in Python</title><link>http://karpoke.ignaciocano.com/2019/12/16/design-patterns-in-python/</link><pubDate>Mon, 16 Dec 2019 23:44:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2019/12/16/design-patterns-in-python/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Traditionally, design patterns have been classified into three main
categories: Creational, Structural, and Behavioral. There are other
categories, like architectural or concurrency patterns, but they&amp;rsquo;re beyond
the scope of this article.
There are also Python-specific design patterns that are created specifically
around the problems that the structure of the language itself provides or
that deal with problems in special ways that are only allowed because of the
structure of the language.&lt;/p&gt;
&lt;/blockquote&gt;</description></item><item><title>10 OOP Design Principles Every Programmer Should Know</title><link>http://karpoke.ignaciocano.com/2019/05/06/10-oop-design-principles-every-programmer-should-know/</link><pubDate>Mon, 06 May 2019 09:56:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2019/05/06/10-oop-design-principles-every-programmer-should-know/</guid><description>&lt;blockquote&gt;
&lt;p&gt;The Object-Oriented Design Principles are the core of OOP programming, but I
have seen most of the Java programmers chasing design patterns like
Singleton pattern, Decorator pattern, or Observer pattern, and not putting
enough attention on learning Object-oriented analysis and design. It’s
important to learn the basics of Object-oriented programming like
Abstraction, Encapsulation, Polymorphism and Inheritance. But, at the same
time, it’s equally important to know object-oriented design principles.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;» Hacker Noon | &lt;a href="https://hackernoon.com/10-oop-design-principles-every-programmer-should-know-f187436caf65----3a8144eabfe3---4"&gt;hackernoon.com&lt;/a&gt;&lt;/p&gt;</description></item></channel></rss>