All posts by
Michał Amerek
Pragmatic Programmer
Results for category: Back-end close
To build or not to build – refactoring towards immutability
Michał Amerek March 12, 2020Builder pattern to gain object immutability is the most commonly used solution. I analyze its advantages, disadvantages and alternatives based on a real-life example.
Messaging Patterns implemented with SQS and SNS
Michał Amerek May 20, 2019In the first two parts of the series about messaging (1 , 2) I made a certain inventory of concepts. Now, I am about to mix them up and show the usage with the help of SNS <-> SQS implementations.
Messaging Patterns to know in Microservices – part II
Michał Amerek March 12, 2019Nowadays, we all create microservices and more and more often we use asynchronous communication. In the first article from the series, I wrote about message construction and messaging channels. Here, I will focus on message routing and endpoints.
Messaging Patterns to know in Microservices – part I
Michał Amerek January 28, 2019Nowadays, we all create microservices and more and more often we use asynchronous communication. In this article, I will try to identify the individual elements of such a messaging system and their roles. In the first part I will focus on message construction and messaging channels.
To mutate or not – on Entities and Value Objects
Michał Amerek July 18, 2017We all know that immutability is GOOD. But should we use it everywhere by default? Let’s show it on the basis of a distinction between Entities and Value Objects.
Yet another architecture clean up
Michał Amerek March 29, 2016This article discusses different approaches to creating a layered architecture – how to reflect the business context in the code; how to structure it; how to understand the dependency inversion and infrastructure layer; and finally as a possibly isolate modules.
Object-Oriented Thinking in the Data-Centric World
Michał Amerek February 23, 2016The mental model of object-oriented programming is not intuitive. The speed and dynamics of today’s data-centric world make it a difficult case. How to learn object-oriented programming then?