이펙티브 코루틴을 요약한 내용입니다 명시적으로 긴 코드를 사용할 때가 있음 함수와 프로퍼티를 지역 또는 톱레벨 변수가 아닌 다른 리시버로부터 가져온다는 것을 나타낼 때 class User: Person() { private var beersDrunk: Int = 0 fun drinkBeers(num: Int) { this.beersDrunk += num } } 확장 리시버를 명시적으로 참조하게 할 수 있음 리시버를 명시적으로 표시하지 않은 퀵소트 구현 fun List.quickSort(); List { if (size < 2) { return this } val pivot = first() val (smller, bigger) = drop(1).partition { it < pivot } return s..