Dynamic Programming

Remember your past. Yes this is all about Dynamic Programming. Jonathan Paulson explains Dynamic Programming in his amazing Quora answer here.Writes down “1+1+1+1+1+1+1+1 =” on a sheet of paper. “What’s that equal to?”Counting “Eight!”Writes down another “1+” on the left. “What about that?””Nine!” ” How’d you know it was nine so fast?””You just added one more!” “So you didn’t need to recount because you remembered there were eight! Dynamic Programming … Continue reading Dynamic Programming

RabbitMQ or Apache Kafka?

Apache Kafka and RabbitMQ are two popular open-source and commercially-supported pub/sub systems that have been around for almost a decade and have seen wide adoption. Given the popularity of these two systems and the fact that both are branded as pub/sub systems, two frequently asked questions in the relevant online forums are: how do they compare against each other and which one to use? Origins … Continue reading RabbitMQ or Apache Kafka?

Static Factory vs Constructors

Generally any class allows clients to create objects by providing a public constructor. There is another technique which every programmer should be aware of. An Static Factory. A class can provide one static factory, method  which is simply an static method which returns object of the class. Note that a static factory method is not the same as the Factory Method pattern from Design Patterns. There are few … Continue reading Static Factory vs Constructors

DDD Terminologies

Terminologies are always an important part of understanding any design pattern. Below are some of  the important terms that we come across on a daily basis if we are implementing our application in DDD way. You can read more about DDD in our previous articles here. Ubiquitous language: – In DDD world, Its a language which is understood by every one. i.e. tech guys should … Continue reading DDD Terminologies

What is Value Objects

A Value Object is something that hold values but not the identity. Value Object is an immutable type that is distinguishable only by the state of its attributes. i.e. Two Value Objects will be considered same if they share all of their attributes. Value Objects has all the properties of an immutable object like String in Java. Like, Value Objects cannot be changed once they … Continue reading What is Value Objects