목록2025/04/28 (3)
LUMI_dev
**오늘 날짜 :** 2025-04-24**진도 정리 :** 오늘은 중복 체크 로직의 위치에 대해 고민하고, 서비스 계층에서만 처리하도록 리팩토링을 완료하였습니다.**오늘 공부한 토픽:** `서비스 계층 책임`, `중복 체크 리팩토링`### 1. 중복 체크 중복 문제- 기존 코드에서는 **서비스 계층**과 **저장소 계층(Store)**에서 모두 **중복 체크 로직**이 존재했습니다. - 아래는 중복 체크가 중복되었던 예시입니다.```java// Store 계층@Overridepublic String create(SocialBoard board) {Optional.ofNullable(boardMap.get(board.getId())).ifPresent(targetBoard -> {throw new..
**오늘 날짜 :** 2025-04-21**진도 정리 :**오늘은 스테이지 3 step3까지 1회독을 완료하였습니다.**오늘 공부한 토픽:** `stream API` , `Optional`### 1. `Optional.ofNullable()`- **정의**: `null`이 될 수 있는 값을 감싸서, `null`일 때 발생할 수 있는 오류를 예방할 수 있게 해주는 클래스입니다. 주로 `null`을 안전하게 처리할 때 사용합니다.```javaOptional.ofNullable(retrieveByName(name)) .ifPresent(club -> { throw new ClubDuplicationException("Club already exists with name:" + club.get..
**오늘 날짜 :** 2025-04-18**진도 정리 :**오늘은 스테이지 2 3회독을 마쳤습니다. 아래와 같이 정리하며 코드의 흐름을 이해하며 회독하였습니다. **오늘 공부한 토픽:** toString();오늘은 `toString()` 메서드를 다시 정의(오버라이드)하는 코드를 통해 `toString()` 메서드를 공부했습니다.코드를 실행해보니 `System.out.println(user);`처럼 `toString()`을 따로 호출하지 않았음에도, 오버라이딩한 `toString()` 메서드의 형태로 출력되는 것을 확인하였습니다. ```java @Override public String toString() { StringBuilder builder = new StringBuilder(); ..