전체 글

Language/Kotlin

[Kotlin/Coroutine] 코루틴으로 비동기처리 Cool 하게 하기

이용자가 로그인하면 응답받은 회원 정보로 계좌목록 조회해 주시고 각 계좌별 은행 서버에 잔액 조회해 주시고 대표계좌는 최근 일주일 거래내역 조회해 주시고 각 거래내역 별 ..... 위 상황은 물론 과장한 가상의 케이스이지만 API 요청에 대한 응답을 받은 후 다른 API 요청을 보내는 일은 실제로 빈번하다. 꼭 API 요청이 아니더라도 비동기적으로 처리하는 로직에 대해 종료시점 또는 응답값 반환시점에 필요한 행위를 하기 위해 Callback 을 많이 사용한다. Callback 위와 같은 상황을 해결하기 위해선(네트워크 요청이 비동기적이라는 가정 하에) 아래처럼 응답을 받은 후 호출할 함수를 인자로 넘겨주어 순차적으로 호출되도록 만든다. fun main() { foo() { boo(it) { // ... ..

일상

관성의 법칙 깨기

개발을 시작하게 된지 2년 된 지금 시점에서 개발을 시작함으로 생긴 가장 장점이라 생각하는것은 문제점을 찾고 개선을 하기위해 노력하는것이다. 예를 들어 지금 사용하는 아이폰은 현재까지 공휴일을 계산해 알람을 설정해주는 기능이 없다. 그래서 한번은 평일에 있던 공휴일에 알람을 끄고 생활했는데, 공휴일이 끝나고 다시 키는것을 깜빡해 출근에 지각을 할뻔한 적이 있다. 지금은 덕분에 공휴일을 계산해 알람을 키고 끄고 해주는 단축어 기능을 개발해 매일 호출해주며 알람을 신경쓰지 않고 살고있다. 이렇게 해오던 일상적으로/관성적으로 생활하는 것을 `관성의 법칙` 이라고 하던데, 개인적으로 이 말을 굉장히 좋아한다. 나에게 남아있는 관성의 법칙이 있다면 나쁜 관성인지, 나쁘다면 개선을 해서 오늘의 나보다 내일의 내가 ..

djawnstj
djawnstj.log