The Prototype design pattern allows us to create new instances based on
existing ones, called prototypes, by cloning them. For example, this is the
created. The pattern finds its place in other languages as well, where it makes
creating objects easier in certain situations and it replaces the
switch construct. Sometimes, we can also use it instead of the Factory
design pattern, for example, when the class constructor performs some
complex logic and cloning the prototypes is more performance-efficient than
creating new instances over and over again.
The class which instances are intended to be cloned to create new ones is called a prototype. You can see concrete prototypes and also prototypes implemented as an abstract class or interface.
We can use prototypes in several situations. Imagine, for example, that you are parsing an XML file with some
...End of the preview...
ict.social is a large database made up of manuals and tutorials, whose main goal is to provide high-quality IT education to everyone. We started out in the Czech republic, where we display roughly a million articles per month and receive plenty of gratitude from our users. Thanks to our successful establishment, we are now bringing these articles to the rest of the world.
Although we are trying to keep our content free of charge, maintaining the site is a huge effort for everyone involved. Therefore, some content (exercises and more advanced material) costs network points. Don't worry, they're really cheap :)
Requested article covers this content:
The Prototype design pattern creates new instances by cloning existing prototypes. It allows us to replace the switch construct.
Buying this article gives you unlimited access to it forever. You will learn some more and help us keep giving our site maintenance which helps you and others get better futures. It's a win-win.
You gain points by supporting our network. This is done by sending a helpful amount of money to support the site, or by creating content for the network.
You can get points immediately using:
|Credit card||SMS||Wire transfer|