코드 깔끔함-
코드 깔끔함-
1. 명실상부하다
명실상부하게 말하자면 간단하지만, 이것은 매우 엄숙한 일이다. 이름을 잘 고르는 데는 시간이 걸리지만, 절약하는 시간은 낭비하는 것보다 많으니, 명명에 주의하고, 더욱 좋은 이름을 발견하면 낡은 것으로 바꾼다
변수, 함수, 혹은 클래스 이름은 이미 모든 큰 문제에 대답했을 것이다. 이 이름을 보면 그가 무엇을 하는지 알아야 한다
int d;// ,
여기 명칭 d는 아무것도 설명하지 않았다. 그는 시간에 대한 사라짐을 일으키지 않았다. 더욱이 일계는 말할 것도 없고 뒤에 주석이 있지 않다고 말할 수도 있다. 그러나 네가 사용할 때 d를 보면 무슨 뜻인지 알 수 있겠니?주석을 뒤져서 봐야지.우리가 한 것은 코드를 읽는 것이다.주석을 읽는 것이 아니라, 물론 이것은 주석이 무의미하다는 것이 아니라, 단지 코드가 읽을 수 있다면 주석을 쓸 필요가 있겠는가
int elapsedTimeInDays;// ,
이렇게 하면 이 변수는 정말 명실상부하다.
2. 오도 방지
int[] acountntList;
여기에 우리는 하나의 수조를
acountList
라고 명명했다. 이것은 분명히 오도된 명명이다. 하나의 수조를list로 명명했다. 그러면 우리가 이 수조를 조작할 때 가장 먼저 생각한 것은list를 사용하는 방법이 아닐까?3. 의미 있는 구분
숫자 시리즈로 명명
a1,a2.....aN
은 의미에 따라 명명된 대립면으로, 이렇게 명명된 것은 정확한 정보를 전혀 제공하지 않는다.시험해 보다
public static void copyChars(char a1[],char a2[]){
for(int i=0;i
만약 매개 변수 이름이 소스와 destination으로 바뀌면, 이 함수는 훨씬 그럴듯하게 변할 것이다
쓸데없는 말은 또 다른 무의미한 구분이다.가령 네가
Product
류가 하나 더 있다면 ProductInfo
류나 ProductData
류가 있다면 그들은 명칭은 다르지만 뜻은 다를 것이 없다다음은 계정 정보를 얻는 함수입니다
getAccount();
getAccounts();
getAccountInfo()
프로그래머가 계정을 가져오려고 하는데, 그는 어떤 함수를 조정해야 하는지 아십니까?
4. 읽은 이름으로
가능한 한 자주 사용하는 식별하기 쉬운 단어를 사용하시겠습니까?
5. 구성원 접두어
m
접두사로 구성원 변수를 표시할 필요도 없고, 클래스와 함수를 충분히 작게 해서 구성원 접두사에 대한 수요를 없애야 한다.6. 인터페이스 이름 지정
선도어 I가 남용되었습니다. 예를 들어 I로 시작하는 것, 예를 들어 IShapFactory
보통 하나의 인터페이스는 이렇게 명명해야 한다
, Runnable( )
, List( )
, OnClickListener( )
코드 예
interface OnReasonItemSelectedListener {
fun onReasonItemSelected(itemId: Int)
}
7.유명
클래스 이름과 대상 이름은 명사나 명사 단어, 예를 들어Customer,Account, 데이터나 info 같은 명사 사용을 피해야 한다
:
8.방법명
방법명은 postPayment, deletPage,save와 같은 시동사나 동사 단어여야 한다.속성 액세서리 수정기와 단언은 그 값에 따라 명명해야 한다
9. 소감마다 한 단어씩
같은 코드에 컨트롤러가 있고 관리자가 있으면 곤혹스럽다.왜 controllers나 관리자를 다 쓰지 않아요?
당신의 코드를 사용할 프로그래머들에게 일관된 명칭 아르바이트는 하늘의 복음이다
10. 쌍관어 쓰지 마라
같은 단어를 서로 다른 목적에 사용하지 않고 같은 용어를 서로 다른 개념에 사용하는 것은 기본적으로 쌍관어이다.
규칙을 따르면 여러 종류에서dd방법이 있을 수 있다. 이러한dd방법의 매개 변수 목록과 반환값이 의미상 등가만 있으면 모든 것이 순조롭다.그러나 누군가가 '일치 유지' 를 결정하고dd라는 단어를 사용해서 이름을 붙일 수도 있습니다. 설령 정말 이런 뜻을 나타내려고 하는 것은 아니더라도, 예를 들어 여러 클래스에dd방법이 있습니다. 이 방법은 두 개의 현존 값을 연결하거나 연결해서 새로운 값을 얻을 수 있습니다. 이 클래스에는 하나의 매개 변수를 콜렉션에 넣는 방법이 있습니다. 이 방법을dd라고 합니까?이렇게 하면 다른dd방법과 일치하는 것 같지만 실제 의미는 다르다. insert나 append 같은 단어로 명명해야 한다. 이 방법을dd라고 명명하면 이중관어이다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.