"The Prototype design pattern is a creational design pattern that involves creating new objects by copying existing ones, rather than creating them from scratch. In other words, the pattern involves creating a prototype object and then making copies of that object as needed, rather than creating new objects each time.
The Prototype pattern can be useful in situations where creating a new object is costly or time-consuming, and where the new object can be created by copying an existing one with a few modifications. By using the Prototype pattern, you can avoid the overhead of creating new objects each time, which can result in improved performance and reduced resource usage."
My question is:
How is creating a new object 'from scratch' (im assuming by calling its parametrized constructor and sending some data as args) any different than having a 'clone()' method which will call the same constructor and send it same args in the context of performance?