programing

Java 유틸리티 클래스의 명명 규칙

goodcopy 2022. 10. 7. 21:43
반응형

Java 유틸리티 클래스의 명명 규칙

유틸리티 클래스를 Java로 작성할 때 따라야 할 좋은 가이드라인은 무엇입니까?

포장지는 "util" 또는 "utils" 중 어느 것이어야 합니까?ClassUtil입니까, ClassUtils입니까?클래스는 '헬퍼' 또는 '유틸리티' 중 어느 것입니까?유틸리티 또는 유틸리티아니면 그것들을 혼합해서 사용하나요?

표준 Java 라이브러리는 Utils와 Utilities를 모두 사용합니다.

  • javax.displaces.displaces 를 클릭합니다.유틸리티
  • javax.print.displaces.displaces 를 지정합니다.Attribut Set Utilities(속성 세트 유틸리티)
  • javax.basic.plaf.basic.기본 그래픽스 유틸리티

Apache는 다양한 Utils와 Utils를 사용하지만 대부분 Utils:

  • org.displays.modeler.displays.displays돔우틸
  • org.displays.modeler.displays.displaysIntrospection Utils(인스펙션)
  • org.apache.commons.io 를 참조해 주세요.파일 시스템 유틸리티
  • org.disc.lucene.워드넷.Analyzer Util(아나라이저 유틸리티)
  • org.disc.lucene.disc.disc어레이 유틸리티
  • org.disc.lucene.xmlparser 를 지정합니다.도무트

Spring은 많은 도우미 클래스와 유틸리티 클래스를 사용합니다.

  • org.springframework.web.web.httpUrlPathHelper
  • org.springframework.core.Reflective Visitor도우미
  • org.springframework.core.Nested Exception Utils(네스트드 예외 유틸리티)
  • org.springframework.springfrack수효율

그럼, 유틸리티 클래스의 이름은 어떻게 짓나요?

많은 관습과 마찬가지로 중요한 것은 어떤 관습을 사용하느냐가 아니라 일관되게 사용하느냐입니다.예를 들어, 3개의 유틸리티 클래스가 있으며, 이를 Customer Util, Product Utils, Store Utility라고 부르면, 그 클래스를 사용하려고 하는 다른 사람들은 항상 혼란을 일으켜 Customer Utils를 잘못 입력하거나 검색하거나 여러 번 욕을 하거나 합니다(스피커가 슬라이드를 표시하면 일관성에 대한 강의를 들었습니다)."1", "2nd" 및 "C"라는 라벨이 붙은 세 가지 주요 요점을 포함하는 연설의 tline)

Customer Util과 Customer Utility 등 철자가 다소 다를 뿐 두 가지 이름은 절대 만들지 마십시오.만약 두 개의 수업을 해야 하는 타당한 이유가 있다면, 그것들에 대해 뭔가 다른 것이 있을 것이고, 그 이름은 적어도 우리에게 그 차이가 무엇인지 단서가 될 것이다.한쪽에는 이름 및 주소에 관련된 유틸리티 함수가 포함되어 있고 다른 한쪽에는 주문에 관련된 유틸리티 함수가 포함되어 있는 경우 CustomerNameAndAddressUtil 및 CustomerOrderUtil 또는 그와 유사한 이름으로 부릅니다.나는 가끔 이름의 의미 없는 미묘한 차이를 보면 미쳐버린다.어제와 마찬가지로 저는 운임, 운임, 운임, 운임이라는 세 가지 분야를 가진 프로그램을 진행하고 있었습니다.나는 그들의 차이를 알아내기 위해 코드를 연구해야 했다.

Java 세계에는 이에 대한 표준 규칙/관습이 없습니다.단, @colinD가 언급한 것처럼 클래스 이름 끝에 s를 추가하는 것이 좋습니다.

그것은 마스터 Java API 디자이너 Josh Bloch가 하는 일(java 컬렉션과 구글 컬렉션)에 매우 표준적인 것 같다.

Helper와 Util이 존재하는 한, 패키지의 특정 기능을 실현하기 위한 API(모듈을 실장하기 위한 패키지 고려)가 있는 경우에는 Helper라고 부릅니다.즉, Util은 어떤 컨텍스트에서도 호출할 수 있습니다.

예를 들어 은행 계좌와 관련된 애플리케이션에서는 모든 번호별 유틸리티 스태틱 API가 다음 주소로 이동합니다.org.mycompany.util.Numbers

API를 지원하는 모든 "계정" 고유의 비즈니스 규칙

org.mycompany.account.AccountHelper

결국, 이것은 더 나은 문서와 더 깨끗한 코드를 제공하는 것의 문제입니다.

유형이 사용자가 제어하지 않는 인터페이스 또는 클래스일 때 형식 이름에 "s"만 추가하는 규칙을 좋아합니다.JDK의 예를 다음에 나타냅니다.Collections그리고.ExecutorsGoogle 컬렉션에서 사용되는 규칙이기도 합니다.

제어할 수 있는 클래스를 다룰 때는 일반적으로 유틸리티 메서드는 클래스 자체에 속합니다.

패키지 이름은 'utils'가 되어야 한다고 생각합니다.클래스명은 클래스 내의 로직의 목적을 지정해야 합니다.sufix -util(s) 추가는 용장입니다.

나는 "도움꾼"과 "유틸리티"라는 단어를 서로 바꿔서 사용한다고 확신한다.어쨌든 당신이 제시한 예시로 판단하건대, 당신의 클래스명이 약어(또는 "DomUtil"과 같은 약어가 들어있다면) 당신의 패키지를 "아무거나"라고 부릅니다.What Util" (또는 패키지에 여러 개의 유틸리티가 있는 경우 유틸리티).그렇지 않으면 생략형이 아닌 전체 이름이 있으면 "아무거나"라고 합니다.「유틸리티에 관계없이」를 참조해 주세요.

정말 너한테 달렸어, 하지만 코드 작성자들이 네가 무슨 말을 하는지 알고 있다면, 넌 가도 돼.만약 당신이 누군가의 직업으로 이 일을 하고 있다면, 내 조언을 듣기 전에 그들의 코딩 기준이 무엇인지 물어보세요.항상 숍 스탠다드에 따라주세요.직장 유지에 도움이 됩니다. :- )

제가 하는 일은 다음과 같습니다.

유틸리티 클래스는 코드 냄새라고 생각하지만 다른 클래스에 맞지 않는 메서드를 재사용해야 하는 경우가 있습니다.

파일명을 사용하는 것이 좋습니다.Utils서픽스에는 여러 사용 사례에 대한 다양한 기능이 포함되어 있기 때문에 utils라는 이름의 패키지는 작성하지 않습니다.대신 utils 파일을 가장 적합한 기존 패키지에 넣습니다.

예를 들어, 기능에 util이 필요한 경우,MyFeatureUtils.java안에 철하다com.myapp.myfeature패키지.

utils 파일에 적절한 패키지가 없거나 여러 모듈에서 액세스할 필요가 있는 경우,root또는 인common패키지.

존재하는 경우utils패키지가 프로젝트에 포함되어 있는 경우에만 utils 클래스를 배치합니다.

기타 예:

  • com.myapp.notification을 클릭합니다.Notification Utils.java
  • com.myapp.account.계정 Utils.java
  • com.myapp.data 를 참조해 주세요.DatabaseUtils.java
  • com.myapp.view를 클릭합니다.ImageUtils.java
  • com.myapp을 클릭합니다.분석을 실시합니다.LogUtils.java
  • src/module/route-modules.module
  • src/middleware/auth-discs.disc

P.S. Utils 대신 Helper를 사용하지 않습니다.이는 도우미가 스테이트풀하고 인스턴스 내에서 일부 상태 및 태스크를 위임하기 위해 일반적으로 사용되는 반면, utils는 완전히 스테이트리스이며 정적 기능만 포함해야 하기 때문입니다.

추신: 매니저는 스테이트풀하고 1개 이상의 인스턴스를 제공, 관리 및 저장하는 데 사용할 수 있기 때문에 Utils 대신 Manager를 사용하지 않습니다.

언급URL : https://stackoverflow.com/questions/2676704/naming-convention-for-utility-classes-in-java

반응형