일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- K8s
- 보조스트림
- jvm
- Java
- mysql
- 토비의 스프링 정리
- 스프링
- 쿠버네티스
- list
- Kotlin
- 자바 ORM 표준 JPA 프로그래밍
- Stack
- spring
- 이스티오
- 백준
- OS
- gradle
- 자바
- thread
- JPA
- redis
- 스트림
- IntellJ
- SpringBoot
- MSA
- GC
- Stream
- Collection
- 토비의 스프링
- Real MySQL
- Today
- Total
목록Kotlin (3)
인생을 코딩하다.
안녕하세요. 요즘 이펙티브 자바(Effective Java)를 읽어보고 있는데요, 읽다보니 코틀린은 이펙티브 자바가 대부분 반영이 되어있는 산물이라고 느꼈습니다. 보통 코틀린이 자바에 비해 훨씬 코드를 간결하게 작성할 수 있다는 것은 누구나 알고 있을텐데요, 구체적으로 어떤 어떤 사례들이 있는지 제가 이펙티브 자바를 읽으면서 한 번 분석하여 보았고, 직접 이펙티브 코틀린이라는 주제로 글을 작성해보고 있습니다. 그럼 Hyung1Jung의 Effective Kotlin 시작해보도록 하겠습니다. [Effective Kotlin - Item2] : 코틀린에서 빌더를 사용할 필요가 있을까? 이번 글은 이펙티브 자바 Item2를 읽어보며 이것이 코틀린라는 언어에서는 어떻게 녹여져 있을까에 관해 작성해보았습니다. 이..
@Transactional fun saveUser(userDto: UserDto) { // 이메일 중복체크 예외처리 로직 if (userRepository.existsByEmail(userDto.email)) { throw EmailDuplicateException() } ... 중간 생략 userMapper.save(user.toUserEntity()) } 위의 코드에서 saveUser메서드는 회원가입을 하는 API다. 이 메서드에는 이메일 중복검사에 관한 기능과 회원 정보를 저장하여 회원가입을 하는 기능이 있다. 또한 위에서 보이는 로직 말고도 추 후 변경이 생겨 다른 로직들이 더 추가 될 수 있다. 서비스에서 회원가입 기능의 흐름상 이메일 중복검사 기능은 어떤식으로든 들어가야 한다. 또 변경이 생겨..
1. 롬복은 왜 써야할까요 어노테이션 기반이기 때문에 코드 자동생성을 통한 생산성을 향상 시킬 수 있습니다. 그에 따라 반복되는 코드르 줄여 가독성 및 유지보수를 향상 시킬 수 있습니다. 추가로 빌더 패턴이나 로그 생성 등 다양하게 활용할 수 있습니다. 하지만 롬복에는 주의사항도 있습니다. @AllArgsConstructor,@RequiredArgsConstructor을 사용했을 떄, 필드 순서를 바꾸면 생성자의 순서도 바뀌는데, 기존 코드의 수정은 필요하지 않기 때문에, 개발자가 의도한 대로 동작하지 않아 버그가 생길 가능성이 큽니다. @Setter의 사용은 객체를 언제든지 변경할 수 있는 상태가 되어서 객체의 안전성이 보장받기 힘듭니다. @Data를 사용하면 모든 어노테이션을 한 번에 사용하기 떄문에..