Design Patterns

"12 Factor App"
What is The Twelve Factor App? The Twelve Factor App a methodology for building modern, scalable, maintainable Software-as-a-Service (SaaS) apps. The Twelve Factor App is a set of principles that describes a way of making software that, when followed, enables companies to create code that can be released reliably, scaled quickly, and maintained in a consistent and predictable manner. Why Do You Need The Twelve Factor App? In the modern era, software is commonly provided as a service: so-called Web Applications or Software as a Service.
Service Discovery
What is a Service Discovery? The service discovery pattern uses a centralized server named “service registry” to maintain a global view of microservice network locations. Microservices update their location in the service registry at fixed intervals. Clients can connect to the service registry and get information about the location of the microservices. There are 2 main service discovery patterns available to implement service discovery for microservices. Client-side service discovery Server-side service discovery Why Do You Need a Service Discovery?
Service Mesh
What is a Service Mesh? A service mesh is a mechanism for managing communications between the various individual services that make up modern applications in a microservice-based system. Why Do You Need a Service Mesh? Once upon a time, programs were developed and deployed as a single application. This traditional approach, called a monolithic architecture, has worked great for simple applications, but becomes a burden as applications become complex and the codebase expands.
Abstract Factory
Also known as Kit Intent Provide an interface for creating families of related or dependent objects without specifying their concrete classes. Explanation Real-world example To create a kingdom we need objects with a common theme. The Elven Kingdom needs Elven King, Elven Castle, and Elven Army, whereas The Orcish Kingdom needs an Orcish King, Orcish Castle, and Orcish Army. There is a dependency between the objects in the kingdom. In plain words
Intent Separate the construction of a complex object from its representation so that the same construction process can create different representations. Explanation Real-world example Imagine a character generator for a role-playing game. The easiest option is to let the computer create the character for you. If you want to manually select the character details like profession, gender, hair color, etc. the character generation becomes a step-by-step process that completes when all the selections are ready.