코드 리뷰가 일으킨 사고와 정리(좋은 인코딩 습관 정리)

7416 단어 FAQ
연유
졸업 후 1년여 동안 일을 하면서 얻은 좋은 경험을 정리하고 싶었지만 흩어진 경험을 잘 정리할 기회를 찾지 못했다.이번에 회사에서 모든 기능 모듈이 무에서 유로의 과정을 겪었다. 수요 분석, 모듈 디자인, 코드 작성, 전후단 연결과 자체 측정, 그리고 후기의 버그의 검색과 수정, 그리고 전체 과정은 나 혼자서 맡았고 귀중한 경험을 많이 얻었다.이 기회를 빌려 얻은 경험을 총결하여 기록하다.
부호화
회사에서 모듈의 코드를 작성한 후, 정면으로 코드 리뷰를 진행했다.왜 정면으로 말하느냐. 1년여의 업무 경험으로 작성한 코드이기 때문에 회사에서 여러 해 동안 인코딩을 해 온 늙은 새들이 보기에 기능은 모두 실현될 수 있지만 곳곳에서 향상시켜야 할 부분이 있고 세부적으로 주의해야 할 것들을 많이 제시했기 때문이다.
명명
명명은 내가 보기에 가장 중요한 문제이자 큰 난제이다. 좋은 명명은 변수나 함수, 심지어 파일의 기능 작용을 일목요연하게 할 수 있다.바로 좋은 명칭이란 주석이다.**명명 스타일:**흔히 볼 수 있는 명명 스타일은 낙타봉식 명명, 밑줄 명명, 헝가리 명명이 있다.이 명명 풍격들은 각각의 장단점이 있다.그러나 내가 보기에 함수와 변수의 명명에는 풍격이 통일되고 그 작용을 명확하게 설명하면 된다.함수 명명: ** 함수 명명은 동빈 구조를 사용하여 함수의 작용을 직관적으로 설명할 수 있다. 아래와 같다.
//  :        
int get_students_list()
//  :        
int update_students_list(char* data)

** 변수 명명: ** 변수 명명은 가능한 한 변수 유형과 용도를 표시해야 한다. 어떤 언어가 변수를 정의할 때 변수의 유형을 설명하더라도 일부 관건적인 변수의 유형을 명명에 표시해야 한다.
//xxx     
xxxConf := get_xxx_cfg()

//xxx    
xxxCnt := 0

저널
로그 인쇄는 다음 몇 가지 원칙을 따라야 합니다.
1.       :        ,error             ,    ,   ,    。

2.           :                    ,             ,           ,         。

3.           :             ,                       。

4.          :         ,              ,             ,         。

콘셉트
if문장if문장은 최단 경로 원칙에 따라 코드를 쉽게 읽을 수 있습니다.
//         
if (xxxx) {
	xxxx;
	xxxx;
	xxxx;
} 
else {
	xxxx;
}

//      :          
if (xxxx) {
	xxxx;
} 
else {
	xxxx;
	xxxx;
	xxxx;
}

for 순환 for 순환은 그 중의 함수 호출을 주의하십시오. 일부 공공 함수 호출이 순환에서 사용될 때 순환 외부에 제출해야 합니다.
//    
for(int i = 0; i < 3; i++) {
	int conf = get_xxx_conf();
	int xxx = conf->{xxx};
}

//            ,        ,      
int conf = get_xxx_conf();
for(int i = 0; i < 3; i++) {
	int xxx = conf->{xxx};
}

상수 일부 특수한 상수 값은 C 언어에서 매크로 정의 형식으로 정의하거나 파일 헤더에서const 정의를 해서 코드에 너무 많은 수치가 나타나지 않도록 하는 것이 좋다. 그렇지 않으면 후기 코드 유지보수가 어려워지고 당초의 이 값의 의미를 기억하지 못할 것이다.
//      
const (
	XXXX_INIT   	   = 0
	XXXX_FAILED        = -1
	XXXX_SUCCESS       = 1
)

메모
코드 주석은 많은 것이 아니라 정교하고 좋은 명명 스타일과 적당한 주석은 코드의 가독성을 강화하고 뒤에 유지보수하는 사람들로 하여금 눈과 마음을 즐겁게 하며 한 번 보면 그 논리와 기능을 알 수 있게 한다.파일 주석은 새 파일을 만들 때 파일 헤더에 파일 주석을 덧붙이고 그 파일이 있는 모듈에 어떤 기능이 이루어지고 파일이 추가되는 시간, 저자를 포함한다.
//   :xxxx      
//   :xxxx:xx:xx
//   :xxx

함수 주석 함수 주석은 파일 주석과 유사하여 표면의 가장 기본적인 함수 기능, 매개 변수, 되돌아오는 값이 필요하다.
//  :  xxxx    
//  :path:   [string],    
//   :ret:  [conf]     
//  :xxx
//    :xxxx:xx:xx
conf get_xxx_conf(string path){
	xxxxx;
	return ret;
}

좋은 웹페이지 즐겨찾기