본문 바로가기

반응형
전체 글 70

[Effective Kotlin] Item 52: Limit the number of operations 모든 collection 처리 함수는 비용이 발생합니다. 따라서 수집 처리 단계의 수를 제한하고, 주로 복합 작업을 사용하여 이를 수행합니다. 복합작업은 아래의 예를 보면 이해하기 쉽습니다. 1. null이 아닌 것을 필터링한 다음 2. null을 허용하지 않는 타입으로 캐스팅 하는 대신 filterNotNull을 사용합니다. 1. null을 매핑한 다음 2. 필터링 하는 대신 mapNotNull을 수행할 수 있습니다. class Student(val name: String?) // Works fun List.getNames(): List = this .map { it.name } .filter { it != null } .map { it!! } // Better fun List.getNames(): L.. 2021. 10. 28.
[Effective Kotlin] Item 45: Consider extracting non-essential parts of your API into extensions Intro API의 중요하지 않은 부분을 익스텐션으로 추출하는 것을 고려하세요. 클래스에서 final 메서드를 정의할 때, 멤버로 정의할지, 익스텐션 함수로 정의할지 결정해야 합니다. // 메서드를 멤버로 정의 class Workshop(/*...*/) { //... fun makeEvent(date: DateTime): Event = //... val permalink get() = "/workshop/$name" //커스텀 get } // 메서드를 확장함수로 정의 class Workshop(/(...(/) { //... } fun Workshop.makeEvent(date: DateTime): Event = //... val Workshop.permalink get() = "/workshop/$nam.. 2021. 10. 28.
[손품 리포트 2] 수원시 영통구 망포동 힐스테이트 영통 1. 아파트 정보 건물명 힐스테이트 영통 주소 경기도 수원시 영통구 망포동 728 용적률 (%) 199 준공년도 (년) 2017 세대수 (세대) 2140 면적 정보 (평/㎡) 26평(87㎡), 29평(96㎡), 33평(110/111㎡), 41평(137㎡) 2. 면적 당 시세 1) 26평 매매시세 (만원) 80,000 전세시세 (만원) 51,000 월세보증금 (만원) 5,000 월세차임 (만원/월) 160 2) 29평 매매시세 (만원) 92,000 전세시세 (만원) 61,000 월세보증금 (만원) 5,000 월세차임 (만원/월) 190 3) 33평 매매시세 (만원) 110,000 전세시세 (만원) 70,000 월세보증금 (만원) 5,000 월세차임 (만원/월) 190 4) 41평 매매시세 (만원) 132,.. 2021. 10. 20.
[손품 리포트 1] 수원시 영통구 매탄동 매탄주공그린빌5단지 1. 아파트 정보 건물명 매탄주공그린빌5단지 주소 경기도 수원시 영통구 매탄동 1282 용적률 (%) 187 준공년도 (년) 2002 세대수 (세대) 732 면적 정보 (평/㎡) 15평(51/52㎡), 19평/20평(65/66㎡), 21평(71㎡), 25평(㎡) 2. 면적 당 시세 1) 15평 매매시세 (만원) 27,000 전세시세 (만원) 22,000 월세보증금 (만원) 1,000 월세차임 (만원/월) 65 2) 19/20평 매매시세 (만원) 38,000 전세시세 (만원) 26,000 월세보증금 (만원) 2,000 월세차임 (만원/월) 65 3) 21평 매매시세 (만원) 39,000 전세시세 (만원) 27,000 월세보증금 (만원) 2,000 월세차임 (만원/월) 65 4) 25평 매매시세 (만원) 5.. 2021. 10. 19.
[Effective Kotlin] Item 38: Use function types or functional interfaces to pass operations and actions Summary 행동을 나타내기 위해, 표준 인터페이스나 추상 클래스 대신 함수 타입이나 함수형 인터페이스를 선호합시다. 함수 타입이 좀 더 자주 사용 됩니다. 여러 번 사용되거나 타입이 길어지면 type alias를 사용합시다. 함수형 인터페이스는 주로 Java 상호 운용성을 위해 선호되며, 표현하려는 것이 임의의 함수 이상으로 복잡한 경우에 선호됩니다. (요약만 봐서는 사실 잘 이해가 안된다 살펴보자!) Intro 많은 언어에는 fuction type이라는 개념이 없습니다. 대신 하나의 메소드를 갖는 interface를 사용합니다. 이런 인터페이스를 SAM(Single-Abstract Method)이라고 합니다. 아래 예시는 view를 클릭할 때 발생해야 하는 정보를 전달하는데 사용되는 SAM의 예입니.. 2021. 10. 7.
[재태크 도서] 부자 아빠 가난한 아빠 (20주년 특별 기념판) 이번 추석에 "부자 아빠 가난한 아빠"를 다시 읽어보았습니다. 이책의 저자 로버트 기요사키에게는 두 아버지가 있습니다. 한 분은 자신의 아버지인 가난한 아빠, 한 분은 친구의 아버지로 자신의 금융지식을 만들어주신 부자 아빠입니다. 이 책은 워낙 유명하기도 하고, 재태크 분야 도서 중에서는 고전으로 손꼽히는 책이죠. 기요사키는 이 책에서 두 아버지에 대해서 언급하며, 부자와 가난한 자들의 마인드 차이, 돈에 대한 시선을 비교하여 다룹니다. 제가 이책을 처음 읽은건 1년 전 무렵이었는데, 처음 이 책을 읽고 머리를 한대(? 좀 많이?) 맞은 것 같았습니다. "저축하는 사람은 패배자가 된다" "집은 자산이 아니다" 다시 봐도 충격적이네요. (물론 지금은 좀 덜 자극 받지만요^^) 이 문구들은 재태크에 대해 막.. 2021. 9. 25.
반응형