diff --git a/categories/kotlin.md b/categories/kotlin.md new file mode 100644 index 0000000..ee950b9 --- /dev/null +++ b/categories/kotlin.md @@ -0,0 +1,31 @@ +# Kotlin + +## Some tips + +### Builder mode in kotlin + +```kotlin +class Car( + val model: String?, + val color: String?, + val type: String?) { + + data class Builder( + var model: String? = null, + var color: String = "pink", + var type: String? = null) { + + fun model(model: String) = apply { this.model = model } + fun color(color: String) = apply { this.color = color } + fun type(type: String) = apply { this.type = type } + fun build() = Car(model, color, type) + } +} +//use +val car = Car.Builder() + .model("Ford Focus") + .color("Black") + .type("Type") + .build() +``` +Based on [stackoverflow](https://stackoverflow.com/questions/36140791/how-to-implement-builder-pattern-in-kotlin)