코틀린 공부한답시고, 마이크로서비스 비슷하게 Spring 써서 간단한거 만들고 있는 중인데..

코틀린은 아직 커뮤니티 규모가 작은거라고 생각되는데 맞음?


일단 파이썬 같은데서는 기본적으로 제공하는 weigted random selector

({1:3, 2:2: 3:5} 이런식으로 맵을 주면 30%의 확률로 1, 20%의 확률로 2, 50%의 확률로 3을 주는 랜덤 함수.)


이거 없어서 직접 만들어서 썼음.


Async하게 동작하는 SQL ORM 라이브러리 없나 찾아보니까, Exposed가 아직 실험적으로 제공하고 있음.

그것도 순수한 논블록킹 io를 사용한 코루틴이라기보다는 io 쓰레드 사용하는것 같고,

query result 가져오는 것도 async하게 잘 되어 있지 않은것 같음.



Redis 라이브러리 없나 찾아보니까, 순수 Kotlin 기반의 Redis 라이브러리는 뭐 하나 있기는한데, 

업데이트 안된지 2년은 넘은것 같아서 Java 기반의 라이브러리를 씀.



그리고 대개 문서가 빈약한것 같음. Exposed의 경우, row를 필터링하고 특정 컬럼의 sum이나 average aggregate하는게 문서에 없어서 좀 해맸음.

자바쪽꺼 끌어다 쓴것들은 당연히 Kotlin에서는 어떻게 해야하는지 문서에 안나온 경우가 많아서 해멨고.



그래서 Bing AI가 많은 도움이 되었음. 여러 다른 문서에서 잘 안나와 있는거 예시 잘 주더라. 

물론 이녀섞도 자주 모르는게 있고, 틀린코드를 계속 우기기도 했음.



Kotlin은 아직 여러모로 문서라던가, 지원되는 라이브러리가 빈약한 편임?