code skill - Gakgu/Gakgu.github.io GitHub Wiki

네임스페이스 쓰기

협업을 전제로 한 프로젝트에서 클래스명, 변수명 등이 겹칠 수가 있다. 그것을 방지하기 위해 네임스페이스를 반드시 한다.

struct, enum, const 변수 한 곳에 몰아넣기

위 3개는 프로젝트 내에서 여러 군데에서 사용할 가능성이 높다. 한 소스파일에 몰아넣어서 관리를 편하게 하자.

변수의 직접 참조 제한하기

필요한

계층 분리하기

물리계층, GUI계층 등 필요한 모듈을 공통점에 따라 상위 모듈과 하위 모듈을 구분한 뒤에 서로 통신할 인터페이스를 정의한다. 물리계층의 경우 외부의 신호만 캐치하는 역할, 어플리케이션 계층은 표현만 하는 역할 등 자신의 역할만 담당하도록 한다.

정적 테스트, 단위 테스트,