특정 주기마다 작업을 모아서 실행하는 Batch Loader를 Kotlin으로 구현해봤다. 여러가지 쓸모가 있겠지만, 나는 Batch Loader를 UI에서 목록을 표시하고, 표시된 아이템만 따로 불러오는데 유용하게 사용하고 있다. 아이디어대부분의 아이디어는 이 Typescript BatchLoader에서 얻었다.잠시 이론적으로 짚고 넘어가면 코드 이해가 쉬울 것같다.BatchLoader는 일정 주기안에 일어나는 모든 요청들을 받아서 별도의 Queue에 쌓아둔다. 요청을 받으면 CompletableDeferred를 반환한다. CompletableDeferred는 콜백 기반의 비동기 통신 시 성공, 혹은 실패에 대한 응답을 다룰때 유용한 클래스로, Javascript에서의 Promise와 비슷한 역할을 ..