10 수업
하나) 클래스 시스템
– 변수 목록
ㅏ 정적 공개 상수
비. 정적 개인 변수
씨 개인 인스턴스 변수
– 공공 기능
– 개인 기능 : 자신을 호출하는 공용 함수 바로 뒤에 배치하십시오..
– 추상화 수준은 순차적으로 내려갑니다.
.
(하나) 캡슐화
– 변수와 헬퍼 함수는 가능한 비공개로 유지되어야 합니다.
.
2) 수업은 소규모여야 합니다.
.
– 클래스 이름은 이 클래스의 책임을 설명해야 합니다.
.
– 클래스 이름이 모호한 경우 클래스에 너무 많은 책임이 있기 때문일 수 있습니다.
.
ㅏ 모호한 단어가 있으면 클래스에 여러 책임이 할당되었다는 증거입니다.
– 클래스 설명(해당되는 경우)(“만약에”), 그리고(“그리고”), -(아래에)~처럼(“또는”), 하지만(“하지만”)사용하지 않고
25말 안팎에서 가능해야 한다.
(하나) 개인 책임의 원칙: 클래스나 모듈을 변경해야 하는 이유는 단 하나여야 한다는 원칙..
– 변경 이유를 파악하려고 하면 코드 추상화가 더 쉬워집니다.
.
– 소규모 클래스가 많은 시스템이 바람직합니다.
.
– 모든 소규모 학급에는 책임이 있으며, 변경해야 하는 이유, 또 다른 소규모 수업으로
협력하여 시스템에 필요한 조치를 취합니다.
.
(2) 응집도
– 클래스에는 적은 수의 인스턴스 변수가 있어야 합니다.
.
– 모든 클래스 메서드는 적어도 하나의 클래스 인스턴스 변수를 사용해야 합니다.
.
– 일반적으로 메서드가 사용하는 변수가 많을수록 메서드와 클래스가 더 응집력이 있습니다.
.
– 메서드당 모든 인스턴스 변수를 사용하는 클래스는 응집도가 가장 높습니다.
.
– 응집력이 높다는 것은 클래스에 속하는 메서드와 변수가 서로 의존하고 논리적 단위로 구성된다는 것을 의미합니다.
묶여있다는 뜻
-‘함수를 더 작게 만들고 매개변수 목록을 더 짧게 만드십시오.‘
– 응집력을 높이기 위해 변수와 메서드를 적절히 분리하여 2~3개의 새로운 클래스로 나눕니다.
.
(삼) 응집력은 여러 소규모 클래스에서 유지됩니다.
.
삼) 변경이 쉬운 클래스
– 깨끗한 시스템은 변경의 위험을 줄이기 위해 클래스를 구성합니다.
.
– OCP(개폐 원칙): 클래스는 확장에 열려 있고 변경에 닫혀 있어야 합니다.
.
– 새로운 기능을 수정하거나 기존 기능을 변경할 때 최소한의 코드로 시스템 구조를 실습합니다.
바람직한.
– 이상적인 시스템에서 새로운 기능을 추가하면 시스템이 향상될 뿐 기존 코드는 변경되지 않습니다.
~ 아니다.
(하나) 변화로부터의 고립
– 테스트할 수 있는 지점까지 시스템의 결합을 줄이면 유연성과 재사용성이 향상됩니다.
.
– 짝이 맞지 않는다는 소리는 모든 시스템 요소가 다른 요소와 변화로부터 자유롭다는 것을 의미합니다.
절연이 잘 된 것을 의미
– 시스템 요소가 서로 잘 분리되어 있으면 각 요소를 이해하기가 더 쉽습니다.
.
– DIP(종속 역전 원리): 자세한 구현이 아닌 추상화에 의존해야 합니다.
.