- 책_곽용재님 홈페이지
- 책_노란북 - 책 가격비교
- 책_김재우-SICP번역
- 플밍_쏘쓰포지
- 플밍_CodingHorror ?
- 플밍_상킴
- 플밍_김민장님
- GPGStudy
- 플밍_미친감자님
- 플밍_jz
- 플밍_샤방샤방님
- 플밍_글쓰는프로그래머2
- 플밍_키보드후킹
- 사람_재혁
- 사람_kernel0
- 사람_박PD
- 사람_경석형
- 사람_nemo
- 사람_kikiwaka
- 사람_Junios
- 사람_harry
- 사람_어떤 개발자의 금서목록..
- 사람_모기소리
- 사람_낙타한마리
- 사람_redkuma
- 사람_영원의끝
- 사람_민식형
- 도스박스 다음카페
- 플레이웨어즈 - 게임하드웨어벤치마크
- http://puwazaza.com/
- David harvey의 Reading Marx's c…
- 씨네21
- 한겨레_임경선의 이기적인 상담실
- 본격2차대전만화 - 굽시니스트
- 영화_정성일 글모음 페이지
- 영화_영화속이데올로기파악하기
- 음식_생선회
- 죽력고
- 사람_한밀
- 플밍_수까락
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 고등학교 사회공부
- programming challenges
- c++
- 삼국지
- modernc++
- 진삼국무쌍5
- 정신분석
- 강유원
- 고전강의
- 삼국지6
- 소비자고발
- 일리아스
- 게임
- 건강
- 단상
- 김두식
- 유시민
- 진중권
- template
- 유머
- 책
- 정성일
- 프로그래밍
- 영화
- Programming
- 인문학
- stl
- BSP
- 노무현
- 태그가 아깝다
- Today
- Total
목록Design Pattern (3)
lancelot.com
1. 디자인원칙 클래스는 확장에 대해서는 열려 있어야 하지만 코드 변경에 대해서는 닫혀 있어야 한다. 스타버즈 커피숍에 여러종류의 커피들과 거기 올리는 데코레이션을 가지고 설명하고 있습니다. 예제가 적절하니 이해가 쏙쏙 잘되네요. 데코레이터 패턴은 역시 생성을 관리해주는 무엇이 있어야 겠군요. 혼자서는 쓰임이 자칫하면 스파게티 코드가 될 우려가 있어보입니다. 2. Decorator Pattern 객체에 추가적인 요건을 동적으로 첨가한다. 서브클래스를 통해 기능을 유용하게 확장하는 방법을 제공. 덧. 이거 예제 C++로 만들어보다가 const 때문에 삽질을 했네요. 같은 함수인가의 구분은 함수선언가지고 하는데요, 함수선언에는 함수명(인자...) const 뒤에 const 까지 들어갑니다. const가 있는..
1. 디자인원칙 서로 상호작용하는 객체 사이에서는 가능하면 느슨하게 결합하는 디자인을 사용해야한다. 예시에서는 기상관측기(Subject) - 여러가지 관측Display 장치(Observer) 가 등장했는데요, 저는 이게 잘 이해가 안됬어요. 기상관측기(Subject)에서 자동으로 Mesurement()를 호출해주는데, 굳이 Observer 가 Subject를 가지고 있을 필요가 있을까 해서지요. 그런데 Design pattern 자체가 잘못되었을 리는 없기때문에, 다른 책(GOF디자인패턴, 이렇게 활용한다)을 보니 다른 예제가 등장했습니다. 엑셀에서 테이블이 있고, 그 테이블을 여러가지 그래프로 나타내주는 그런 관계를 예시로 들어놨더군요. 그제서야 확실히 이해가 갔습니다. 표의 자료가 갱신되면, 그래프의..
1. 디자인원칙 바뀌는 부분은 캡슐화한다. 상속보다는 구성을 활용한다. 구현이 아닌 인터페이스에 맞춰서 프로그래밍한다. strategy pattern 을 설명하면서 Duck class를 예로 들었네요. Duck 클래스에 fly(), quack() 등의 함수들이 있고, 이걸 상속받아서 RedheadDuck, RubberDuck 등을 만들었는데요. 그렇게하면, 자식 class에서 fly(), quack()등이 바뀌거나 재정의 될때 비효율적이됩니다. 그래서, fly(), quack() 등의 행동을 나타내는 함수를 behavior class로 빼낸 후 그것을 superclass인 Duck class가 가지고 있는 방식이 훨씬 나은 방식이라는 설명입니다. 이해가 잘 되도록 적절한 예시네요. 2. Strategy ..