인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

박철현님의 프로필 이미지

작성한 질문수

Readable Code: 읽기 좋은 코드를 작성하는 사고법

일급 컬렉션

정적 생성자 메서드 of, from

작성

·

77

0

정적 생성자 메서드의 메서드 명을 정하실 때 of 혹은 from 그 외 추가로 create 등등... 몇 가지 더 있는걸로 아는데, 그 차이가 제 입장에서는 되게 미세하기도 하고 잘 와닿지 않는데 강사님은 어떤 기준을 두고 메서드 명을 정하시나요??

답변 2

0

박우빈님의 프로필 이미지
박우빈
지식공유자

안녕하세요, 박철현 님!

저도 너무 세세하게 구분을 하지는 않고, 상황에 맞게 자연스럽게 읽히는 단어를 선택합니다.
of()를 가장 많이 사용하고, 생성한다는 뉘앙스를 더 주고 싶으면 create() 등을 사용하고 있어요.

감사합니다 🙂

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. 박철현님께서 정적 생성자 메서드의 이름을 정할 때 어떤 기준을 사용하는지에 대해 궁금해 하시는군요. 이에 대한 답변으로 유사한 질문을 다루고 있는 몇 가지 자료를 소개해 드리겠습니다.

  1. 정적 팩터리 메서드 사용 기준

    • 이 게시물에서는 정적 팩토리 메서드 이름에 대한 기준 중 하나로 메서드 이름을 통해 생성의 목적이나 의도를 명확히 하는 것이 중요하다고 설명합니다. of(), from(), create()와 같은 이름은 각각의 의도를 효과적으로 전달할 수 있도록 설계되어 있고, 이를 통해 코드의 가독성과 유지보수성을 높일 수 있습니다.
  2. 정적 팩토리 메서드 of() 컨벤션

    • 이 게시물에서는 여러 파라미터 세트를 통해 인스턴스를 생성하는 경우 of() 메서드를 사용할 것을 추천하고 있습니다. 이는 어떤 값이나 객체로부터 새로운 객체를 구성할 때 사용하는 것이 일반적입니다.

정적 팩토리 메서드의 이름 선택은 설계자에게 달려 있지만, 일반적으로 사용되는 규칙은 다음과 같습니다:
- of(): 주로 여러 값을 인자로 받아 새로운 인스턴스를 생성할 때 사용됩니다.
- from(): 다른 타입의 객체를 바탕으로 인스턴스를 생성할 때 사용됩니다.
- create()newInstance(): 직접적으로 객체 생성을 나타낼 때 사용됩니다.

이러한 네이밍 컨벤션은 코드의 의도를 명확히 하고 가독성을 높이는 데 기여합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.