Acronyms를 사용한 Java 명명 규칙
다다이 자바 자바 클라스트의 올바른 이바 이.DVDPlayer
또는DvdPlayer
?
자바에서는 이것에 대한 하나의 표준이 없다는 것이 정답인 것 같기 때문에, 에 유의하고 싶다.NET Framework Design Guideline은 이것을 명시한다.
이제 주제에서 벗어났다고 나를 비난하기 전에, 자바와 에 대한 클래스 명명 지침이 있다는 것을 기억하십시오.NET Framework는 상당히 유사하며, 그래서 이 입니다.NET 지침은 설득력 있는 참고 자료로 유용하다.
총칙
두 지침 모두 약어가 널리 알려져 있고 잘 이해될 경우에만 두문자어를 사용할 것을 권고한다.DVD나 XML은 이것의 훌륭한 예시인데, 당신은 그것들을 즉시 인식하겠지만, 확장된 버전을 인식하는데 시간이 좀 더 걸릴 것이다.
약어
두) 하지 말 NET Framework Guideline은 두 개의 일반적인 약어를 제외하고 (두문자어가 아닌) 약어를 사용하지 말 것을 권고한다.ID
그리고OK
식별자에 사용될 수 있다., 케이스 어어, 혼합 스스 사스 사스.Id
(PascalCase 식별자와 반대로) camelCase 식별자의 첫 번째 단어를 제외하고 항상 사용된다.
자바에서 이 협약은 일부 시간만 따른다.철자가 얼마나 섞였는지 봐getID
그리고getId
JCL에 있다(해당 페이지 아래쪽으로 스크롤).자바 8 버전에서는getId
점점 더 많이 사용되어, 이것은 PascalCase 규약이 요즘 선호되고 있음을 암시한다.가능하면 약어는 아예 피하는 것이 좋다.
짧은 머리글자어
두 두 는 을 .NET Framework Guideline에는 다음과 같은 두 글자의 머리글자어가 있다.IO
는 두 글자에 대해 같은 경우를 가져야 한다.의 경우, PascalCase의 자자자(클子)를 수 .DBRate
, camelCase 식자子(local variable)의 경우우를 수 .ioChannel
.
이것은 확실히 자바에서도 지배적인 관습인 것 같다.
긴 머리글자어
첫 단어를 제외하고 NET Framework 지침은 두문자어가 PascalCase 식별자의 첫 단어를 제외하고 PascalCase와 camelCase 식별자에 대해 3글자 이상 혼합 대소문자를 사용하도록 권장한다. 당신은 laugho 를 있을 이다.XmlDocument
, 로컬 변수 이름이 지정될 수 있는 동안httpRequest
.
이 관습이 자바에서 항상 지켜지는 것은 아니다.네 개의 문자 두문자어는 보통 혼합 대소문자를 사용하는 것처럼 보이지만, JCL조차도 세 개의 문자 두문자에 대해 일관성이 없다.대부분 다 대문자로 보이는 것 같은데, 마치...URL
XML
SQL
그리고DOM
, 그러나 다음과 같은 몇 가지 예외가 있다.Jar
.
결론.
Java의 경우:
4자 이상의 문자 머리글자어는 대소문자를 혼합하여 사용하십시오.표준 도서관이 이런 일을 하는데, 그냥 말이 되네.
3글자 두문자어는 JCL과 같은 모든 대문자를 사용하거나 와 같은 혼합 대소문자를 사용할 수 있다.NET Framework는 그렇다.어느 쪽이든 일관성을 유지하라.
두 글자 두문자어의 경우 모두 대문자를 사용하십시오.
2글자 약어의 경우, 자바에는 실제로 표준이 없지만, 다른 이름과의 일관성이 모든 대문자를 더 잘 보이게 하지 않는 한 혼합 케이스를 사용하는 것이 좋다.
정답은 없다.다른 도구와 더 잘 어울리는 일련의 연습과 컨벤션.
그러므로 나는 더 선호한다.DvdPlayer
. Eclipse에서 당신은 ShiftT++를 할 수 있고 각 단어의 첫 글자로 수업을 선택할 수 있기 때문에 더 도움이 된다.
두 사람 다 야생에서 쓰는 걸 본 적이 있는데 선이는 그 길로 가는 것 같다.DVDPlayer
난 월요일이 더 . 나는 더 좋아한다.DvdPlayer
그러나, 그렇게 하면 에서처럼 연속된 여러 개의 두문자가 있더라도 경계라는 단어가 어디에 있는지 분명하기 때문이다.HTTPURLConnection
.
클래스의 개별 인스턴스를 다음과 같이 정의하고 싶다.
Catalogue catalogue;
Person person;
그러므로 만약 내가 사용한다면DVDPlayer
그 예를 뭐라고 불러야 하지?dVDPlayer
그래서 난 그 집을 선택하겠지DvdPlayer
클래스 이름: 다음과 같은 인스턴스 이름을 지정할 수 있음dvdPlayer
.
JavaSE 클래스, apache commons 및 spring의 몇 가지 예:
HttpURLConnection
HTTPAddress
UrlPathHelper
AopProxy
ISBNValidator
그래서 - 별로 중요하지 않다.
효과적인 자바는 DVD플레이어를 선호하는 것 같다.
다른 사람들이 지적했듯이, 이것은 프로젝트마다 다른 스타일이다., 등는 과바ava 한다.DvdPlayer
멋을 부리다
https://google.github.io/styleguide/javaguide.html#s5.3-camel-case
Sun Java 문서로부터:
클래스 이름은 대문자로 표시된 각 내부 단어의 첫 글자와 혼합된 경우 명사여야 한다.학급 이름을 간단하고 서술적으로 유지하도록 노력하라.전체 단어-아비드 두문자어 및 약어를 사용하십시오(URL 또는 HTML과 같이 약어가 긴 형식보다 훨씬 널리 사용되는 경우는 제외).
DVDPlayer
but이지는 않다.DvdPlayer
드물지 않다.
자주 보는 것보다 자주 보는 것getId
그것은 아마도 ID가 "아이덴티티"의 단축이라고 생각하기 때문일 것이다.그것은 사실 ID 문서의 이니셜이다.
HttpURLConnection
종종 혼합된 관습의 예로서 주어진다.단, URL에서 프로토콜 이름으로 사용되는 "http"는 소문자여야 한다(상위사례가 종종 받아들여지지만).
여기에는 "올바른"이 없고 선호만 있을 뿐이다.
Sun은 "URL"과 "HTML"을 포함하는 클래스에 이름을 붙이는 방식으로 일관하지만, 나는 자바독에서 모든 캡과 낙타 케이스를 모두 사용하는 HTTP를 본다.
개인적으로, 나는 DVD 플레이어를 선호한다.
참조URL: https://stackoverflow.com/questions/2236807/java-naming-convention-with-acronyms
'programing' 카테고리의 다른 글
외부 라이브러리에서 정의되지 않은 속성을 추가할 때 Vue에서 변경 사항을 감지하지 못함 (0) | 2022.05.23 |
---|---|
전에 경시하라, 아니면 그 후에 경시하라. (0) | 2022.05.23 |
유닛 테스트를 위해 Vuex 게이터를 조롱하면 예기치 않은 결과가 발생함 (0) | 2022.05.23 |
uint64_t 인쇄 방법?오류: "허위 후행 '%' 형식" (0) | 2022.05.23 |
C99에서 유니온을 통한 형식연결이 불특정화 되어 있으며, C11에 명시되어 있는가? (0) | 2022.05.23 |