General
- 데이터 출력 시 가공된 것뿐 아니라, 필요에 따라 참조하게 되는 것들도 전부 출력하는 방안 고려
- 플롯팅을 위한 데이터출력 시, 각 플롯에 대한 특정 정보는 생략하고 출력할 수 있으나, 플롯팅을 분석할 때는 그 정보가 필요할 때가 생김
- 그림이 특이하게 나왔는데, 그 림의 한 점이 실제로 존재하는 것인지 구체적으로 예를 보여 주기 위해
- 동적할당 예외처리하는 것 (물론, new 연산자를 쓸 때 NULL을 반환하는 식으로 판단해서는 안됨)
- 소멸자를 Virtual로 만들기. (기반클래스 타입의 포인터를 delete 시키는 경우, 기반클래스에서 소멸자가 virtual로 되어있으면 된다)
- 디버깅출력을 별도로 하는 것 (err 리다이렉션, on off 모드 방식으로 만들기)
- 라이브러리를 공유하는 것 (DLL같은 걸로. 컴파일 안해도 될 수 있게)
- 스트래티지 패턴을 써보는 것 (단순한 수치 파라미터가 아니라 전략이 바뀔 때 if else 문으로는 한계 있음)
- 함수 간의 책임을 분명히 해라.
- 각 파라미터 별 실험을 한 번에 끝내기 위해 쓰는 반복문. 이 반복문이 단위 실험을 담당하는 함수와 별도로 떨어지도록.
- 출력 기능을 함수안에 함부로 넣지 않기
- 왠만하면 출력 파라미터를 둬서 함수 외부에서 출력하도록
- 파라미터는 컴파일된 프로그램에 전달하도록(재컴파일 하지 않아도 되도록)
- 코딩을 했으면 다시 볼 때 전체구조 및 의존성 관계를 이해하기 쉽도록 그림이나 설명파일을 작성하여 저장.
'소프트웨어공학' 카테고리의 다른 글
버전관리(Git) (0) | 2012.07.25 |
---|---|
버전 관리(Mercurial) (0) | 2011.07.13 |
Code profiler (0) | 2010.02.04 |
Probe effect (0) | 2010.02.04 |
UML Class Template 표기 (0) | 2009.09.15 |