2022. 12. 14. 02:05ㆍTIL(Today I learned)
🏴Facts(한 것) & Findings(배운 것)
* 자바에서 코틀린으로 Collection 파트 다시 읽기.
저번 스터디에서 5,6장을 다 하지 못했고(열띈 토론 덕에) 이참에 6장을 다시 읽으면서 새로운 것을 뽑아내려고 노력했습니다.
먼저 코틀린의 Collection 구조는 아래와 같습니다.
Java와는 확연히 다른 상속 관계를 가지고 있다는 것을 알 수 있습니다.
기본적으로 가변 컬렉션으로 사용하는 자바와 달리 Kotlin은 불변 컬렉션(read-only) 컬렉션을 사용하고 있습니다.
그렇기에 상속구조가 위와 같은 것이죠.
불변 컬렉션의 사용은 부수 효과가가 생기는 것을 막을 수 있고, 의도치 않은 데이터 접근을 막을 수 있다는 장점이 있습니다.
덕분에 더욱 함수형 프로그래밍에 집중할 수 있게 되었죠.
코틀린의 주된 관습은 "공유된 컬렉션을 변경하지 말라"입니다.
이런 관습을 지키기 위해서 불변 컬렉션이 십분 활용되고요.
그리고 이런 관습을 지키기 위해 <자바에서 코틀린으로> 에서는 "생성하되 변경하지 말라"라는 문장이 있기까지 합니다.
* 서점에서 <코틀린 인 액션> 책 구매.
<자바에서 코틀린으로> 스터디를 진행하면서 코틀린이라는 언어에 대한 이해가 부족하다는 생각이 많이 들었습니다.
언어가 생기게 된 철학이나 동작 원리같은 것이 궁금했고, 가장 잘 설명 되어 있는 책인것 같아서 구매하게 됐습니다.
구매하고 보니 <코틀린 인 액션>도 <자바에서 코틀린으로> 스터디를 함께 진행 중인 현석님이 역자여서 더 놀랬습니다.
'TIL(Today I learned)' 카테고리의 다른 글
(TIL) 20221231/ 22년 마지막 TIL (0) | 2022.12.31 |
---|---|
(TIL) 20221214/ 함수형 프로그래밍에서의 순수 함수 (0) | 2022.12.15 |
(TIL) 20221102, 테이블 연관관계의 역정규화 (0) | 2022.11.03 |
(TIL) 20221027/ 책임에 따른 분리 (1) | 2022.10.27 |
(TIL) 20221019/ 테스트 하기 좋은 코드 (0) | 2022.10.20 |