#Kotlin



"Kotlin: should I define Function or Property?" Igor Wojda



Kotlin ввел новые элементы для объявляения - свойство (property). Единственное что часто вызывало вопрос когда выбрать что использовать - функция или свойство?

Вопрос порой даже философский и зависит от взгляда разработчика. В статье Igor раскрывает когда стоит выбрать что.



Чтобы понять стоит ли использовать функцию, ответьте на вопрос: "Описывает ли функция поведение?".Например print(), jump() или calculate().

Если ответ положительный. то используйте функцию.



Кандидат для использования свойства должен отвечать требованиям:

1️⃣ Не бросает исключений

2️⃣ Легкий для вычисления, либо вовсе их не требует.

3️⃣ Возвращает один и тот же результат (при условие неизменения состояния объекта)



Также не забывайте о том что свойства могут быть объявлены в интерфейсе и их get()/set() функции можно определить самостоятельно.

🔥 И killer фича - property delegate!, которая позволяет переиспользовать код на новом уровне 🔥



Подробнее о property в Kolin смотрите в официальной документации.

Также официальная документация раскрывает когда должно использовать свойство, а когда функцию.