본문 바로가기
[책 정리] 좋은 일을 하는 데 왜 괴로울까요 - 지금 이대로 좋다. - 좋은 일을 하는데 괴로운 것은 집착하기 때문입니다. 좋은 일이라는 명분을 내걸고 남에게 강요하고 따라주지 않으면 미워하기 때문에 괴로움이 생깁니다. - 좋은 일이 있으면 나부터 그렇게 하고 누군가가 물으면 그렇게 알려주면 됩니다. 따르고 안 따르고는 그 사람 인생이에요. 내 인생만 소중한 게 아니라 남의 인생도 소중하고 내 생각만 소중한 게 아니라 남의 생각도 소중합니다. 내가 보기에 좋은 일이라고 모두 따라야 하는 건 아닙니다. 끝 2022. 6. 1.
[책 정리] 인생은 수를 놓는 것과 같다 - 지금 이대로 좋다. - 인생은 수를 놓는 것과 같습니다. 하루하루 순간순간 겪는 것이 그대로 인생입니다. - 어떤 일을 겪든 순간순간이 다 소중한 나의 인생입니다. 어느 순간도 버릴 것이 없습니다. 아무리 똑같은 일이 반복되는 것 같아도 인생에 반복은 없습니다. 꽃을 여러 개 수놓는다고 해서 똑같은 꽃이 아닌 것과 같습니다. 끝 2022. 5. 31.
[Effective Kotlin] Item 44: Avoid member extensions 이 글은 Effective Java 를 완독하고, Kotlin 을 상용으로 사용하는 개발자 입장에서 Effective Kotlin 글 중 새로운 내용, remind 할 필요 있는 부분, 핵심 내용 등만 추려 정리한 내용입니다. # interface PhoneBook{ fun String.isPhoneNumber(): Boolean } class Fizz: PhoneBook{ override fun String.isPhoneNumber(): Boolean { /../ } } 위와 같은 구현이 가능하지만 피하는 것이 좋다. (DSL 제외) # 특히 extension 을 visibility control 이슈로 member 로 정의하면 안 된다. class PhonebookIncorrect{ fun Strin.. 2022. 5. 30.
[Effective Kotlin] Item 43 : Consider extracting non-essential parts of your API into extensions 이 글은 Effective Java 를 완독하고, Kotlin 을 상용으로 사용하는 개발자 입장에서 Effective Kotlin 글 중 새로운 내용, remind 할 필요 있는 부분, 핵심 내용 등만 추려 정리한 내용입니다. # member function 과 extension function 의 결정적 차이는.. extension 은 별도로 import 되어야 함. extension 은 virtual 이 아님. (재정의될 수 없다.) member 가 더 높은 우선순위를 가짐. class 에 대한 것이 아닌 type 에 대한 것임. (nullable type 에도 정의할 수 있음) class reference 의 member 로 list 되지 않음. # extension 은 별도의 pkg 에 위치할 수.. 2022. 5. 29.
[Effective Kotlin] Item 42 : Respect the contract of compareTo 이 글은 Effective Java 를 완독하고, Kotlin 을 상용으로 사용하는 개발자 입장에서 Effective Kotlin 글 중 새로운 내용, remind 할 필요 있는 부분, 핵심 내용 등만 추려 정리한 내용입니다. # compareTo 는 Any 에 속해있는 녀석이 아니다. 해당 함수 호출이 필요할 경우 Comparable interface 를 구현해야 한다. # compareTo 는 다음과 같은 특정을 가져야 한다. Antisymmetric. ( a>=b & b>=a 이면 a==b) Transitive. (a>=b & b>=c 이면 a>=c) Connex. 모든 2개 이상의 element 들이 관계를 가져야만 한다. Do we need a compareTo? # Kotlin 에서는 comp.. 2022. 5. 28.
[Effective Kotlin] Item 41 : Respect the contract of hashCode 이 글은 Effective Java 를 완독하고, Kotlin 을 상용으로 사용하는 개발자 입장에서 Effective Kotlin 글 중 새로운 내용, remind 할 필요 있는 부분, 핵심 내용 등만 추려 정리한 내용입니다. Hash table Problem with mutability # Mutable object 는 hash 등과 같은 data structure 에 사용되면 안 된다. 또는 collection 에 들어가는 순간부터 data 를 변경하면 안 된다. The contract of hashCode # Consistency : 동일 object 에 여러번 호출되어도 동일한 값을 제공해야 한다. 2개의 object 의 equals 값이 true 라면, hashCode 값도 동일해야 한다. 필수.. 2022. 5. 27.
[Effective Kotlin] Item 40 : Respect the contract of equals 이 글은 Effective Java 를 완독하고, Kotlin 을 상용으로 사용하는 개발자 입장에서 Effective Kotlin 글 중 새로운 내용, remind 할 필요 있는 부분, 핵심 내용 등만 추려 정리한 내용입니다. # Any 를 상속한 모든 object 는 잘 정의된 아래 3개 규칙을 지켜야 한다. equals hashCode toString Equality # object 같은 type 이거나 subtype 일 때만 equality operator 를 사용할 수 있다. Why do we need equals? The contract of equals # Reflexive ( x.equals(x) == true ) Symmetric ( x.equals(y) == y.equals(x) ) Tr.. 2022. 5. 26.
[책 정리] 후회는 자기 학대다 - 지금 이대로 좋다. - 지나간 잘못을 후회하며 자책하는 것은 어리석은 거예요. 후회는 실수를 저지른 자기를 미워하는 마음으로 자기에 대한 또 다른 학대입니다. - 남을 용서하지 못 하는 게 미움이라면 자기를 용서하지 못 하는 게 후회입니다. 후회는 반성이 아니에요. '나처럼 잘난 인간이 어떻게 바보처럼 그때 그걸 못했을까?' 이게 후회에요. 이제라도 그때 그런 수준이 나라는 걸 인정하고 받아듣이면 됩니다. - 사람이란 별것 아니에요. 실수도 하고 잘못할 수도 있어요. 이런 나를 나무라는 대신 '잘못했구나. 다음엔 같은 실수를 말아야지' 하고 가볍게 끝내고 후회나 자책 대신 앞으로 나아가야 합니다. 끝 2022. 5. 25.
[책 정리] 인정하면 자유로워진다 - 지금 이대로 좋다. - '이건 내가 잘못했구나, 이건 내가 틀렸구나, 이건 내가 몰랐구나' 하고 인정하면 삶이 참 가볍고 자유로워집니다. 끝 2022. 5. 24.
반응형