…the whole business process can be divided into smaller asynchronous sub-processes with each one feeding i.e. “piping” its output into the input of the subsequent process(es). At each stage some processing is done for e.g. data enriching, filtering etc and this processing generically is termed as a “filter”.
Strangler pattern is a way of migrating from legacy applications to new ones with both being operational at the same time and the upgrade happening behind the scenes gradually.
Seeing as micro-service architectures are all the rage these days, I decided to dip into it by building…
In a multi-tenant environment the application database is usually partitioned by tenants. This is done to achieve isolation and scalability. The problem of course is how do you route tenant requests to the correct databases?
In part 2, I talked about my domain modeling thought process so this post is about trying to persist those objects for long term storage. Although the avenue for different data storage provider is always open with the kind of design I will talk about here, my default data store tends to be SQL Server […]
In part 4, I detailed the way I went about creating application services for my expense tracking application. In this final post, I will talk about the ASP.NET Core MVC application that I built with HTML5/Razor front end views on top of the application services. Remember the application services consumption model sketch from the last […]
Having read Vaugh Vernon’s book on DDD implementation, I decided to portgrade (port+upgrade) my old clunky Windows based N-tier desktop expense tracking application to ASP.NET Core MVC application using some of the Domain Driven Design concepts I studied in the book.
If you are not sure who this API is going to benefit and how, chances are You Ain’t Gonna Need It
Its often assumed that legacy code should not be refactored because no one knows what worms are hidden in that can and what kind of monstrous bugs will be unleashed upon the users if that code is refactored. In some cases, it does seem to hold however, done in smaller chunks to the code that […]