개인적인 생각정리용 입니다
틀린부분 지적해 주시면 수정하겠습니다 ^^
1. singleton 패턴
static를 이용해 하나의 클래스 객체만 생성되게 하는 기법
멀티스레드 환경에서는 double checked locking 기법이 필요하며
double checked locking중 생성자 호출관련한 문제가 야기될수 있으므로
될수있으면 singleton객체는 초기에 한번 호출 후 자유롭게 사용하는게 좋다 ^^
컴파일러 최적화를 변경해서 하는 방법이 있으나 안되면 골파인다.
2.Abstract Factory 패턴
if, switch를 이용해서 코딩시
특정 변수가 설정되고 그 변수 걸린 모든값을 확인 후
업데이트 해야 하는데
빡시니깐 좀 신경쓸것을 줄여 보자는 패턴
- Type A -
위에처럼 코딩할것을
//c++ 문법으로 하겠습니다 ^^
- Type B -
쓸때없이 길어진거 같지만 유지보수를 생각하자면
Type A의 경우
이런식으로 붙을거고 하나의 CPP의 라인의 무지 길어진다
그리고 run외의 함수가 walk(), sleep(), arrow() 등의 함수가 있는데
덜렁거리는 플머가 sleep()에 else if를 추가 않할경우 문제가 발생한다 ^^
Type B의 경우
하나의 파일에 모두 때려 박을수도 있겠지만
생각있는 프로그래머의 경우 CPP를 추가 할꺼고 거기에
아래와 같이 코딩후
메인문에 아래와 같이 추가할 것이다
우선 소스의 가독성이 올라간다
그리고 추가 부분은 순수 가상이기 때문에 추가를 않하고 컴파일 하면 바로 에러가 난다.
근데 모 이것도 모든 추가되는 클래스가
순수가상 함수를 만들어 줘야 하기때문에 귀찮은건 있다
'글 > 코딩' 카테고리의 다른 글
GOF 패턴 - Adapter 패턴 (0) | 2012.07.17 |
---|---|
GOF 패턴 - Prototype 패턴 (0) | 2012.06.28 |
eclipse helio에 resin 2.x 버전 물리는 방법 입니다 ^^ (1) | 2011.01.28 |
UNICODE 기반에서 SendRequest 할시 방법 입니다 (0) | 2010.05.26 |
VC++로 서비스 프로그램 작성 방법 입니다 (0) | 2010.01.25 |