[Kotlin] getter, setter์— ๋Œ€ํ•ด์„œ (Effective Kotlin ์Šคํ„ฐ๋””)

val ๊ทธ๋ฆฌ๊ณ  var getter, setter๋ฅผ ์ด์•ผ๊ธฐํ•˜๋Š”๋ฐ ์›ฌ val var ์˜ ์ด์•ผ๊ธฐ๋ƒ ์‹ถ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ œ๋Œ€๋กœ ๊ณต๋ถ€ํ•ด๋ณด๋‹ˆ ์ด ์ด์•ผ๊ธฐ๋ฅผ ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์—†๋‹ค. val, var์˜ ์˜๋ฏธ val : value var : variable ์ •๋ง ๊ธฐ๋ณธ ์ ์ธ ์‚ฌ์‹ค ์ด์ง€๋งŒ ๊ฐ„๊ณผํ•˜๊ณ  ์žˆ์—ˆ๋‹ค. ๊ทธ๋™์•ˆ์€ ์•„๋ž˜์™€ ๊ฐ™์ด ์•Œ๊ณ  ์žˆ์—ˆ์ง€๋งŒ ์‚ฌ์‹ค ์ด ๋‚ด์šฉ์œผ๋กœ๋งŒ ์•Œ๊ณ  ์žˆ์—ˆ๋‹ค๋ฉด ๋น„์•ฝ์ด๋‹ค. val : immutable var : mutable getter setter์˜ ๊ฐœ๋…๋„ ์บก์Šํ™”์™€ ๊ด€๋ จํ•œ ๊ธฐ๋ณธ์ ์ธ ๊ฐœ๋…์ธ๋ฐ, ๊ทธ๋ณด๋‹ค ๋” ๊ธฐ๋ณธ์ ์ธ ๊ฐœ๋…์˜ val var ์ด์•ผ๊ธฐ๋ฅผ ์™œ ํ•˜๋Š๋ƒ? Kotlin์€ ๋ณ€์ˆ˜์˜ getter(), setter()๋ฅผ ๋‚ด๋ถ€์ ์œผ๋กœ ์ƒ์„ฑํ•ด์ฃผ๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ์ด์™€ ๊ด€๋ จํ•˜์—ฌ val, var์˜ ํ•ต์‹ฌ์ ์ธ ์ฐจ์ด๋Š” ๋ฐ”๋กœ ์ด๊ฒƒ์ด๋‹ค. val..