[Spring 프로젝트] step 3 요구사항 및 리뷰

지니🧸·2023년 3월 25일
0

피드백 저장소

목록 보기
3/5

요구사항

  • "Members" 탭 개발
  • 회원 수에 제한 X > 성능 저하 주의 (쿼리 튜닝, 스키마 설계, 페이징 등)
  • 특정 기준 활용한 필터링 기능

피드백

1. 필드 이름과 실제 입력값이 동일한 경우가 잦아 value값은 주로 생략

@GetMapping()
public ResponseEntity<?> getMembers(@RequestParam(value = "page") int page) {}

2. 클래스의 유지보수성에 유의하여 코딩하자

3. stream을 활용하자

findAllUsers와 같이 해당하는 모든 객체를 맵핑해야하는 메서드는 for loop보다 stream이 용이하다

4. find 메서드에서 결과가 없을 경우에는 null 대신 빈 배열을 리턴하자

NullPointerException을 처리하는 골치아픈 과정보다는 빈 값을 리턴하는게 현명한 선택

5. Predicate

함수형 인터페이스: 추상 메서드가 오직 하나인 인터페이스

  • @FunctionalInterface - 해당 인터페이스가 함수형 인터페이스 조건에 부합하는지 검사하는 에노테이션

Predicate: Java에서 제공하는 함수형 인터페이스로 인자를 받아 boolean 타입을 리턴

참고: Java 8 함수형 인터페이스

profile
우당탕탕

0개의 댓글