Розбираємося, чому властивість у Kotlin — це міні-API: читання відбувається через
get(), а запис — через
set(value). Учимося «відкривати» читання й «закривати» запис за допомогою
private
set, робити computed properties (властивості-вітрини) без зберігання значення та правильно працювати з backing field через
field. Окремо розглянемо валідацію й нормалізацію в сетері (
require(...),
trim()), а також типові помилки (рекурсія в setter, «дорогі» computed properties, розмазана валідація).