자바 개발 규범 총화코드 코드 코드 규범
9579 단어 자바 개발
1.기본 원칙
강제 적 원칙: 1.문자열 의 조합 작업 은 StringBuilder 를 사용 해 야 합 니 다. 2.try...catch 의 용법
try{
}catch{Exception e
e.printStackTrace();
}finally{
}// Action , ;
try{
//
}catch(Exception e){
// ,
}//
try{
}catch{Exception e
throw new runtimeException(e);//
}finally{
}
1.포획 후 무슨 일 을 하 는 지 모 르 거나 어떻게 처리 해 야 할 지 모 르 는 경우 에는 이상 을 포착 하지 말고 외부 층 에 남 겨 포획 하여 처리한다. 2.반환 형식 은 집합 입 니 다.방법 성명 에 서 는 범 형 을 사용 해 야 합 니 다.자바 doc 에 어떤 상황 에서 null 로 돌아 가 는 지,어떤 상황 에서 빈 집합 으로 돌아 가 는 지 밝 혀 야 합 니 다. 3.방법,변수 성명 범 위 는 다음 과 같은 우선 순 위 를 사용 해 야 합 니 다.private,proctected,Public,변 수 는 다음 과 같은 우선 순 위 를 사용 해 야 합 니 다.국부 변수,인 스 턴 스 변수,클래스 변 수 를 사용 해 야 할 경우 스 레 드 보안 을 확보 해 야 합 니 다.만약 에 ThreadLocal 로 인 스 턴 스 변수 나 클래스 변 수 를 저장 할 수 있 습 니 다. 4.필요 하지 않 으 면 순환 에서 변수 나 new 대상 을 정의 하지 마 십시오.가능 한 한 필요 한 마지막 순간 에 new 대상 으로 가기; 5.필요 하지 않 으 면 순환 중 에 try..catch 를 사용 하지 마 세 요. 6.클래스 에서 비교적 복잡 한 논리 에 대해 줄 주석 방식 으로 주석 을 달 아야 합 니 다.자바 코드 에 서 는 블록 주석(/*/)으로 주석 을 달 수 없습니다. 7.자바 류 의 이름 첫 번 째 자 모 는 대문자 로 써 야 하고 여러 단어 로 구성 되 어 있 으 며 각 단어의 이니셜 은 대문자 로 써 야 한다. 8.jsp 의 파일 이름 은 모두 소문 자 여야 합 니 다. 9.Spring 의 bean 프로필 이름 은 소문 자로 작성 해 야 합 니 다.형식 은 xxx.bean.xml,xxx.bean.xml 프로필 의
12.코드 에 서 는 System.out.println()을 사용 하여 디 버 깅 출력 을 하 는 것 을 금지 합 니 다.디 버 깅 정 보 를 사용 하려 면 log.debug()를 사용 해 야 합 니 다.필요 한 정 보 를 log.info()로 출력 합 니 다. 13.클래스 에 쓸모없는 import 가 나타 나 지 않도록 IDE 도 구 를 사용 하여 최적화 할 수 있 습 니 다.클래스 제출 전에 코드 를 포맷 할 수 있 습 니 다. 14.업무 논리 처리 가 있 는 클래스 는 Junit 단원 테스트 클래스 를 써 야 한다. 15.국제 화 지원:ftl 템 플 릿 에 중국어 문자 가 나타 나 는 것 을 허용 하지 않 습 니 다.해당 properties 파일 에 모두 넣 어야 합 니 다.properties 파일 은 Action 류 와 같은 디 렉 터 리 에 넣 어야 합 니 다.ftl 의 인 코딩 은 모두 UTF-8 형식 을 사용 해 야 합 니 다.properties 파일 이름:중국어:Action 이름+"zh”+“_CN".properties,영어:Action name+"en”+“_US”.properties 16.하나의 프로그램 파일 은 2000 줄 을 넘 지 않 는 것 이 좋다. 17.대상 의 역할 영역 을 최대한 축소 시 키 면 대상 의 보 이 는 범위 와 생존 기간 도 가능 한 한 작 아 지고 가능 한 한 부분 변 수 를 우선 사용 합 니 다.전체 변 수 를 사용 할 방법 이 없습니다.우선 ThreadLocal 로 처리 합 니 다. 18.한 방법 으로 완 성 된 기능 은 단일 하고 서로 다른 기능 은 서로 다른 방법 으로 포장 해 야 한다. 19.가능 한 한 이상 처리 또는 이상 전환,포장 이상 만 하지 마 세 요. 20.대상 이 특정한 범위 내 에서 청소 되 어야 한다 면(쓰레기 로 회수 되 는 것 이 아니 라)finally 자구 가 있 는 try 블록 을 사용 하여 finally 자구 에서 청소 하 십시오. 21.일부 논리 와 관련 된 클래스 를 한데 묶 는 것 에 대해 하나의 클래스 의 정 의 를 다른 클래스 의 정의 에 두 는 것 을 고려 할 수 있다.이런 상황 은 내부 클래스(예 를 들 어 인터페이스 층 의 이벤트 응답 등)를 사용 하 는 것 을 추천한다.내부 류 는 모든 외곽 류 의 모든 구성원 의 방문 권 을 가지 고 있다. 22.구성원 변수 에 대한 접근 은 getter/setter 방법 을 통 해 접근 의 합 법성 과 코드 조정 을 확보 하 는 것 이 좋 습 니 다. 23.추상 류 나 구체 류 가 아 닌 인 터 페 이 스 를 우선 선택한다.만약 당신 이 어떤 것 이 기본 이 될 것 이라는 것 을 안다 면,당신 은 우선 그것들 을 인터페이스 로 설계 해 야 합 니 다.방법 정의 나 구성원 변 수 를 넣 어야 만 구체 적 이거 나 추상 적 인 유형 으로 수정 할 수 있 습 니 다.인 터 페 이 스 는 고객 이 원 하 는 동작 과 만 관련 되 고,클래스 는 세부 사항 을 실현 하 는 데 관심 을 가 지 는 경향 이 있다. 24.자바 표준 라 이브 러 리 에서 제공 하 는 용 기 를 사용 합 니 다.그들의 용법 에 정통 하면 업무 효율 을 크게 높 일 것 이다.우선 Array List 를 선택 하여 순서 구 조 를 처리 하고 HashSet 을 선택 하여 집합 을 처리 합 니 다.HashMap 을 선택 하여 관련 배열 을 처리 합 니 다.linkedList 를 선택 하여 스 택 과 대기 열 을 처리 합 니 다.순서 방문 을 최적화 시 켰 고 List 중간 에 삽입 하고 삭제 하 는 비용 은 적 지만 무 작위 방문 은 느 립 니 다.앞의 세 개 를 사용 할 때 는 그들 을 List,Set,Map 으로 전환 시 켜 야 한다.그러면 필요 할 때 다른 방식 으로 실현 할 수 있다. 25.배열 은 가장 효율 적 인 저장 과 무 작위 방문 대상 참조 시퀀스 방식 이지 만 하나의 배열 대상 을 만 들 면 배열 의 크기 가 고정 되 고 공간 이 부족 할 때 새로운 배열 을 만들어 복사 하면 Array List 보다 효율 적 입 니 다.그래서 장면 을 명 확 히 사용 해 야 합 니 다. 26.'private','proctected'키 워드 를 사용 하도록 한다.라 이브 러 리 의 특징(클래스,방법,필드 포함)을 Public 로 표시 하면 더 이상 제거 할 수 없습니다.이러한 방식 에서 실 현 된 변동 이 파생 류 에 미 치 는 영향 이 가장 적 고 다 중 스 레 드 문 제 를 처리 할 때 사유 성 을 유지 하 는 것 이 특히 중요 하 다.Private 필드 만 보 호 받 을 수 있 기 때문에 동기 화 제어 되 지 않 은 사용 에 의 해 파 괴 될 까 봐 걱정 하지 않 아 도 된다. 27.백 엔 드 업무 코드 사용 금지
try{
something()
}catch(Exception ex)
{}
new Exception()
2.클래스 작성 규범
클래스 의 구조 조직 은 일반적으로 다음 과 같은 순서에 따른다. 1.상수 성명 2.정적 변수 선언 3.구성원 변수 성명 4.구조 함수 부분 5.Finalize 부분 6.멤버 방법 부분 7.정적 방법 부분 8.이런 순 서 는 추천 하 는 것 으로 실제 개발 에서 일정한 척도 에 따라 수정 할 수 있 으 며 원칙 은 절차 가 더욱 읽 기 쉽다 는 것 이다.예 를 들 어 방법 에 대한 순 서 는 중요성 에 따라 배열 하거나 알파벳 순서에 따라 배열 하거나 방법 간 의 관계 에 따라 배열 한다. 9.모든 방법(구조 와 finalize 포함)은 한 단락 이다.여러 변수 성명 은 논리 에 따라 하나의 단락 을 구성 하고 단락 과 단락 사 이 를 빈 줄 로 구분한다. 10.클래스 성명 을 할 때 접근 통 제 를 지적 해 야 합 니 다.일반적으로 수정자,Public,private 가 없습니다. 11.방법 과 방법 사이 에 큰 부분 간 에 빈 줄 로 격 리 해 야 한다. 12.유 니 버 설 클래스 를 작성 할 때 표준 형식 을 준수 하 십시오.equals(),hasCode(),toString(),Clone(Cloneable 인터페이스 구현)을 정의 하고 Comparable 과 Serialiable 인 터 페 이 스 를 실현 합 니 다. 13.디자인 기간 에 계승 이 필요 없 는 유형 에 대해 서 는 final 을 사용 하도록 한다.
3.변수 작성 규범
1.멤버 변수 에 대해 서 는 private 를 사용 합 니 다. 2.매개 변수 성명/정의 가 한 줄 을 차지 합 니 다(매개 변수 제외).예 를 들 어
int a;
int b;
비 int a,b;읽 기 쉽 고 버그 찾기 쉽 습 니 다.
3.부분 변 수 는 사용 하기 전에 초기 화 되 어야 합 니 다.일반적으로 설명 할 때 초기 화 됩 니 다. 4.변수의 설명 은 프로그램의 시작 위치 에 두 어야 합 니 다.
...와 같다
public void myMethod() {
int int1 = 0; // beginning of method block
if (condition) {
int int2 = 0; // beginning of "if" block
...
}
}
하나의 예외 적 인 상황 은 for 구문 에서 정의 성명 이 한 줄 을 차지 하지 않 을 뿐만 아니 라 표현 식 내부 에서 Eclips 로 생 성 되 는 것 입 니 다.예 를 들 어:
for(int i = 0; i<100; i++)
5.배열 의 설명 은<데이터 형식[]+변수 이름>방식 을 사용 합 니 다.
char[] buffer;
...이 아니 라
char buffer[];
4.방법 작성 규범
1.멤버 방법 에 대해 서 는 Public 의 멤버 변 수 를 쉽게 사용 하지 마 세 요.주요 장식 부 호 는 Public,private,proctected,없 음 2.빈 방법 에서 방법 설명 과 함수 체 는 모두 한 줄 에 있 을 수 있 습 니 다.void func(){} 3.방법 과 방법 사이 에 한 줄 비우 기 4.방법의 문서 주석 은 방법의 앞 에 놓 고 한 줄 을 비 워 서 는 안 됩 니 다. 5.너무 많은 매개 변수 목록 을 피하 고 가능 한 한 5 개 이내 로 제어 합 니 다.여러 개의 매개 변 수 를 전달 해 야 할 경우 이 매개 변 수 를 수용 하 는 대상 을 사용 하여 전달 하여 프로그램의 가 독성 과 확장 성 을 향상 시 킵 니 다. 6.방법 중의 순환 스킨스쿠버 는 2 층 을 초과 해 서 는 안 된다. 7.디자인 기간 에 하위 클래스 가 필요 없 는 클래스 에 대해 서 는 final 을 사용 합 니 다. 8.모든 방법 은 가능 한 한 코드 줄 수가 100 줄 을 넘 지 않도록 합 니 다(유효 코드 줄,주석 포함 하지 않 음).그러나 논리의 완전 성 을 확보 해 야 합 니 다. 9.인터페이스 에 있 는 방법 은 기본 단 계 는 proctected 입 니 다.다른 서브 시스템 의 가방 이 자신의 서브 시스템 인터페이스 에 있 는 방법 을 호출 하 는 지 확인 할 때 만 방법 을 Public 로 노출 합 니 다.
5.언어 사용 및 쓰기 규범
1.변수의 정의 가 이전 역할 영역의 변수 와 동명 이인 을 피 합 니 다. 2.방법 과 방법 사이 에는 빈 줄 로 분리 해 야 한다 3.부분 변 수 는 사용 시간 에 설명 하고 부분 변수/정적 변 수 는 성명 할 때 동시에 초기 화 합 니 다. 4.상수 와 비교 할 때 상 수 는 비교 식 의 앞 에 놓는다.예 를 들 어:
if(“simpleCase”.equals(obj))…
if(null == obj)….
5.return 문장에서 복잡 한 연산 이 있어 서 는 안 된다. 6.switch 문 구 는 결 성 된 분기 가 필요 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
학습 찌르기: 초보 Servlet 용기 (웹 서버) ― Tomcat압축 을 풀 면 tomcat 패키지 의 디 렉 터 리 구 조 를 볼 수 있 습 니 다. 2. 시작 에 실패 하면 TCP 의 8080 포트 가 다른 프로그램 에 의 해 점용 될 수 있 습 니 다.작업 관리자 에서 어떤...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.