인프런 커뮤니티 질문&답변

궁금이님의 프로필 이미지
궁금이

작성한 질문수

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

간단한 주문 조회 V4: JPA에서 DTO로 바로 조회

현업에서 제네릭 쓰나요?

해결된 질문

작성

·

765

1

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)

[질문 내용]
가끔 오류날 때 recompile 해보곤 하는데..

G:\spring\spring-data-project\jpashop\src\main\java\jpabook\jpashop\api\MemberApiController.java:

uses unchecked or unsafe operations.

Recompile with -Xlint:unchecked for details.

 

이게 뭔가하고 찾아보니,

    @Data
    @AllArgsConstructor
    static class Result<T>{
        private int count;
        private T data;
    }

여기 이 부분이..

물론 파란색이라 에러같은 느낌은 아니고, 그냥 안내 정도로 보이긴 하는데,

https://bgpark.tistory.com/33

 

근데 제가 언뜻 왠만하면 제네릭 쓰지 말라고 들었던거 같긴 한데 기억이.. 잘못들었는지 왜곡되었는지..

옛날 라이브러리들은 제네릭으로 구현된게 많아서 그냥 그거 쓰고 제네릭으로 따로 구현하지 말랬던거 같은데.. 제가 잘못 기억하고 있는 거겠죠?

답변 1

2

안녕하세요. 궁금이님, 공식 서포터즈 코즈위버입니다.

콜렉션처럼 이미 제네릭을 제공하는 경우 외에 직접 제네릭을 사용하는 경우가 흔하지는 않습니다.

다만, 다양한 결과값을 동일한 프로세스로 처리하고 싶다 등등의 경우 제네릭을 활용해야 하는 경우가 종종 있습니다. 예시로 든 코드처럼, 컨트롤러에서 클라이언트에게 항상 동일한 객체로 응답을 하고 싶은 경우 제네릭을 사용하면 편하게 처리할 수 있습니다.

제네릭을 사용할것인가 말것인가를 결정하기 위해선, 제네릭을 도입하여 문제를 해결할 수 있는지? 다른 방법이 있는지 등을 고려하여 결정해야 합니다 :)

감사합니다.

궁금이님의 프로필 이미지
궁금이

작성한 질문수

질문하기