Builder, Creator and Creation
- 2019-11-29
- rocketchat
Builder
Builder is a creational design pattern that lets you construct complex objects step by step. The pattern allows you to produce different types and representations of an object using the same construction code. (Source: Builder - refactoring.guru)
You might think of creating a giant constructor with lots of parameters, which may also measure up to the above work. But it's against the No Long Parameter List rule.
A real-life example 👉IRoomBuilder, RoomBuilder
Creator
Creator is a concept from the creational design pattern - Abstract Factory.
The
AbstractFactory pattern lets you produce families of related objects without specifying their concrete classes. (Source: Abstract Factory - refactoring.guru)
A real-life example 👉 ILivechatCreator (It seems that we do not apply an abstract factory pattern but a factory pattern here. Because there are no various types of livechat rooms.)
Creation
The Creation is the basic data for building a complex object. A constructor or a Builder will create more complex objects based on the Creation that passed to it.
A real-life example 👉 User