inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)

20강. 코틀린의 scope function

20강. 코틀린의 scope function 수강 중 질문

해결된 질문

247

유경호

작성한 질문수 1

1

안녕하세요. 최태현님 오늘자로 해당 강의 다 수강완료하였습니다. 먼저 좋은 강의 제공해주셔서 감사하다는 말씀 드립니다.

작은 질문을 하나 드리고자 하는데요. 강의 내용과는 다소 무관한 질문입니다.

20강. 코틀린의 scope function 강의 중 11:25에 나오는 코드인데요.

val person = personRepository.save(Person("최태현", 100))

찾아보니 이러한 방식으로 Repository를 통해 저장한 인스턴스를 받아와 쓰는 형태의 코드를 꽤 작성하시는 거 같습니다.

 

다만 제가 의문인 것은 만약 JPA를 사용한다고 한다면 엔티티 매니저에 의해 영속화된 Person("최태현", 100)엔티티나 personRepository.save()를 통해 반환된 엔티티나 완전히 동일한 객체일탠데 왜 굳이 이렇게 코드가 작성되는지 궁금합니다. 🙂

 

val person = Person("최태현", 100)
val person2 = personRepository.save(person)
println(person.equals(person2)) // true

person이나 person2나 엔티티 매니저에 의해 같은 객체일 것 같은데 말이죠. 한 줄로 간결한 코드를 만들기 위함일까요?


너무 강의와 무관한 질문이라 결례를 범하는지는 모르겠습니다만 최태현님의 의견이 궁금하여 질문 남깁니다. 감사합니다.

java kotlin 객체지향

답변 1

1

최태현

안녕하세요, 경호님! 🙂 질문 주셔서 감사합니다.

질문 주신 내용이 아래와 같을까요?!

 

[아래]

우리가 Person 이라는 클래스를 만들어 DB에 저장하려 하는데,

val person = Person("최태현", 100)
personRepository.save(person)

로 할 수도 있고

val person = personRepository.save(Person("최태현", 100))

이라 할 수도 있는데 후자의 코드를 사용하는 이유는 무엇인가?!

 

이 질문에 대해 답변드려보면, 특별한 이유가 있지는 않습니다! 단순히 한 줄로 줄였다 라고 봐주셔도 될 것 같아요! 🙂 답변이 도움이 되었으면 좋겠습니다. 감사합니다! 🙏

0

유경호

정확히 의도를 파악해주셨습니다. ㅎㅎㅎ 별 거 아닌 질문에 답변 잘 해주셔서 너무 감사합니다. 좋은 일만 가득 하십쇼!

수업노트

0

55

1

싱글톤과 스프링

0

72

2

get() = 3

0

51

2

강사님

0

75

1

강의 복습하면서 생긴 질문

1

95

1

Kotlin과 Java의 현업에서의 활용

0

125

2

data class와 자바의 Lombok을 이용한 DTO 클래스 차이 질문

0

75

1

코틀린에서 상속 시, 주의점에 대한 질문

1

97

3

내용 이해 질문

0

57

1

자바와 코틀린의 함수형 프로그래밍,

1

91

1

플랫폼 타입 설명 문의

2

77

2

널 아님 단언 관련 질문

0

84

1

강의 중 질문

0

80

2

범위 비교 질문

1

92

2

타입캐스팅 궁금한점 질문드립니다.

1

239

2

코틀린 val 질문

0

167

2

완강 후 Kotlin 이런저런 질문 드려봅니다!

3

408

2

확장함수 스타일 질문

0

140

2

확장 프로퍼티 질문

1

157

1

update 함수를 만든다는게 어떤 의미인지 예시가 궁금합니다!

1

283

1

java class의 NotNull 어노테이션 인식

1

264

1

[16강] 확장함수 관련 질문입니다!

1

134

2

리턴타입 사용시 any를 사용해도 괜찮은가요?

1

142

1

안녕하세요 scope function 에 receiver 가 없는 경우

1

172

1