Reader small image

You're reading from  Kotlin Design Patterns and Best Practices - Third Edition

Product typeBook
Published inApr 2024
PublisherPackt
ISBN-139781805127765
Edition3rd Edition
Right arrow
Author (1)
Alexey Soshin
Alexey Soshin
author image
Alexey Soshin

Alexey Soshin is a software architect with 18 years of experience in the industry. He started exploring Kotlin when Kotlin was still in beta, and since then has been a big enthusiast of the language. He's a conference speaker, published writer, and the author of a video course titled Pragmatic System Design
Read more about Alexey Soshin

Right arrow

Summary

In this chapter, we learned about creational design patterns and how they help us manage object creation.

We started by using the object keyword to make a class with only one instance. Then, we discussed using a companion object for Static Factory Methods, which lets subclasses define which kind of object to create.

After that, we talked about smart casts, which make it easier to work with different types of objects. We applied them in the Abstract Factory design pattern to create groups of related objects.

Next, we explored the Builder design pattern, where we saw how to create complex objects step by step. We also found out that functions can have default values for their inputs, and we can use names for the inputs instead of just their positions.

Finally, we looked at the copy() function of data classes. This is like making a clone of an object, and it helps us when using the Prototype design pattern to make similar objects with small changes.

The interesting...

lock icon
The rest of the page is locked
Previous PageNext Page
You have been reading a chapter from
Kotlin Design Patterns and Best Practices - Third Edition
Published in: Apr 2024Publisher: PacktISBN-13: 9781805127765

Author (1)

author image
Alexey Soshin

Alexey Soshin is a software architect with 18 years of experience in the industry. He started exploring Kotlin when Kotlin was still in beta, and since then has been a big enthusiast of the language. He's a conference speaker, published writer, and the author of a video course titled Pragmatic System Design
Read more about Alexey Soshin