자체 문서화 된 코드로 더 쉽게 읽고 유지 관리
최소 놀랍게도 의 원칙 과 코드 그대로 의 교훈을 따르십시오 하나의 목표에 하나의 변수 만 사용하면 이해하기 쉽고 설명없이 코드를 쉽게 읽을 수 있습니다.
올바르게 구조화 된 코드는 사용하기 쉬워지고 (더 저렴합니다)
또한 여기에서는 query
명령문을 실행하기 전에 항상 준비하는 데 사용되는 것으로 보입니다 . 아마도이 코드의 일부를 하나 이상의 도우미 메서드 로 리팩터링 하여 쿼리를 준비하고 실행하기위한 것입니다 ( DRY 원칙 준수 ).
이렇게하면 효과적으로 다음을 수행 할 수 있습니다.
- 헬퍼 메소드에서 하나의 변수 만 사용하여 현재 컨텍스트의 쿼리를 식별하십시오.
- 검색어를 다시 실행할 때마다 더 적은 코드를 입력해야합니다.
- 다른 사람이 코드를 더 읽기 쉽게 만듭니다.
예 :
리팩토링 된 버전이 분명히 더 나은 예제에서 가져온 것을 고려하십시오. 물론 스 니펫은이 질문의 목적을위한 예시 일 뿐이지 만이 개념은 여전히 사실이며 규모를 유지합니다.
예 1 :
Strings querycre,queryins,queryup,querydel;
querycre = 'Create table XYZ ...';
execute querycre ;
queryins = 'Insert into XYZ ...';
execute queryins ;
queryup = 'Update XYZ set ...';
execute queryup;
querydel = 'Delete from XYZ ...';
execute querydel ;
예 2 :
Strings query;
query= 'Create table XYZ ...';
execute query ;
query= 'Insert into XYZ ...';
execute query ;
query= 'Update XYZ set ...';
execute query ;
query= 'Delete from XYZ ...';
execute query ;
예 3 (리팩토링 된 의사 코드) :
def executeQuery(query, parameters...)
statement = prepareStatement(query, parameters);
execute statement;
end
// call point:
executeQuery('Create table XYZ ... ');
executeQuery('Insert into XYZ ...');
executeQuery('Update XYZ set ...');
executeQuery('Delete from XYZ ...');
혜택은 정기적 인 재사용으로 나타납니다.
개인 일화
원래는 제한된 화면 부동산으로 작업하는 C 프로그래머로 시작했기 때문에 변수를 재사용하면 컴파일 된 코드 (이전)와 더 많은 코드를 한 번에 읽을 수있게했습니다.
그러나 고급 언어로 넘어 가고 함수형 프로그래밍을 다듬어 부작용을 제한하기 위해 불변 변수와 불변 참조를 사용하는 습관을 들었습니다.
나를 위해 무엇이 들어 있습니까?
모든 함수의 입력을 변경할 수없는 습관을 가지고 새로운 수학 결과와 같이 새로운 결과를 반환하는 경우 상점을 복제하지 않는 습관을 들이게됩니다.
확장하면 다음과 같습니다.
- 짧은 기능을 쓰고
- 잘 정의 된 목표로
- 이해하기 쉬워요
- 재사용하기 위해
- 확장 (OO 상속 또는 기능 체인에 의한 여부)
- 그리고 문서 (이미 자체 문서화).
나는 여기서 변경 가능한 상태에 이점이 없다고 말하는 것이 아니라, 습관이 당신에게 어떻게 자랄 수 있고 그것이 코드 가독성에 어떻게 영향을 미치는지 지적하고 있습니다.