<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Software Design on Coffee-Driven Development</title>
    <link>https://duijzer.com/categories/software-design/</link>
    <description>Recent content in Software Design on Coffee-Driven Development</description>
    <generator>Hugo</generator>
    <language>en</language>
    <copyright>© {currentYear}, Jacob Duijzer. All rights reserved</copyright>
    <lastBuildDate>Thu, 07 Nov 2019 18:00:00 +0200</lastBuildDate>
    <atom:link href="https://duijzer.com/categories/software-design/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Arrowhead anti-pattern challenge</title>
      <link>https://duijzer.com/posts/arrowhead-antipattern-challenge/</link>
      <pubDate>Thu, 07 Nov 2019 18:00:00 +0200</pubDate>
      <guid>https://duijzer.com/posts/arrowhead-antipattern-challenge/</guid>
      <description>&lt;h5 id=&#34;update-2019-11-08-added-a-bonusbonus-anchor-contribution-from-bob-written-in-prolog&#34;&gt;update (2019-11-08): added a &lt;a href=&#34;https://duijzer.com/posts/arrowhead-antipattern-challenge/#bonus-anchor&#34;&gt;bonus&lt;/a&gt; contribution from Bob, written in prolog&lt;/h5&gt;&#xA;&lt;p&gt;Just recently I had to work on a huge flow-chart to determine farm types based on the animal transports to and from farm locations. I started out with a small proof of concept but didn&amp;rsquo;t like the way it turned out. I did some research and learned I was basically creating a so called arrow head (&lt;a href=&#34;http://wiki.c2.com/?ArrowAntiPattern&#34;&gt;&amp;ldquo;Arrowhead&amp;rdquo; anti-pattern &lt;/a&gt;).&lt;/p&gt;&#xA;&lt;p&gt;While it was nothing new, I never knew it was called arrowhead anti-pattern (or arrow anti-pattern).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Asynchronous Model Validation</title>
      <link>https://duijzer.com/posts/async-model-validation/</link>
      <pubDate>Thu, 07 Mar 2019 19:52:10 +0100</pubDate>
      <guid>https://duijzer.com/posts/async-model-validation/</guid>
      <description>&lt;p&gt;UPDATE: &lt;a href=&#34;www.kamilgrzybek.com/&#34;&gt;Kamil Grzybek&lt;/a&gt; commented on my article and pointed me in this direction: a blog post about &lt;a href=&#34;http://blog.stephencleary.com/2013/01/async-oop-2-constructors.html&#34;&gt;Async OOP 2: Constructors&lt;/a&gt; by &lt;a href=&#34;http://blog.stephencleary.com&#34;&gt;Stephen Cleary&lt;/a&gt;. While I still my post, I realize it is a bad practice.&lt;/p&gt;&#xA;&lt;p&gt;Last week I found some &lt;a href=&#34;http://www.kamilgrzybek.com/&#34;&gt;great articles&lt;/a&gt; about &lt;a href=&#34;https://martinfowler.com/tags/domain%20driven%20design.html&#34;&gt;Domain Driven Design&lt;/a&gt;. While I have been trying out various patterns and design principles like Clean Architecture and Domain Driven Design I was still finding out how to implement domain events. While doing some exercises I came up with a solution to validate domain entities with asynchronous validations which I want to share.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
