포스트를 만든 목적
- 지하철에서 책 보다가 정리할 겸 만들었다.
내용
무엇이 헷갈리길래 구분하는 것인가?
서로 다른 타입이지만, 공통 분모 함수 선언을 갖을 수 있는 점 때문에 헷갈린다. 이러한 헷갈림은 interface 사용법과 virtual 메서드 사용법에 헷갈림을 준다. 다음 사용 예제를 보면, 헷갈릴 것이다.
그러면 언제 interface를 사용 하는게 적당한가?
C++ Template 를 해보았다면, 쉽게 이해가 되는데, "틀"만 필요할 경우에 interface를 쓴다. 즉, 함수 선언, 변수 선언만 공통 분모로 만들기 위해서 사용하는게 적당하다.
그러면 언제 virtual method를 사용 하는게 적당한가?
함수 선언, 변수 선언 및 내용까지 공통 분모로 만들기 위해서 사용 하는게 적당하다.
많이 헷갈리지도 않는데, 꼭 구분해야 하는가?
사실 난 그렇게 헷갈리지 않는다. 10만줄 짜리 C# 프로젝트를 안해봐서, 모르기 때문일 수도 있다. 그러므로 나는 구분해서 쓸란다. 구분해서 썻을 때, 보다 더 직관적이기 때문이다. 다음 예제 코드를 보고 스스로 결정하는게 좋겠다.
결론
- 나는 구분해서 쓰겠다.
여담
- 이상하게 오늘 아침에 일어 났더니, 머리가 헤롱 헤롱 거린다. 헤롱헤롱 거리면서 포스트 쓰기란 쉽지 않다.
'책 정리 > Effective C#' 카테고리의 다른 글
item 25, serializable 타입이 더 좋다. (0) | 2010.07.18 |
---|---|
item 24, 명령적 프로그래밍보다 선언적 프로그래밍이 더 좋다. (0) | 2010.07.14 |
item 23, 클래스 내부 객체에 대한 reference 반환을 피하라. (0) | 2010.07.11 |
item 22, 이벤트를 이용하여 외부로 노출할 인터페이스를 정의하라. (0) | 2010.07.10 |
item 21, delegate를 이용하여 콜백을 표현하라. (1) | 2010.07.10 |
item 19, 상속보다는 interface를 정의하고 구현하는 것이 좋다. (1) | 2010.07.07 |
item 18, 표준 Dispose 패턴을 구현하라. (2) | 2010.07.06 |
item 17, boxing과 unboxing을 최소화하라 (0) | 2010.07.04 |
item 16, Garbage를 최소화 하라. (0) | 2010.07.03 |
item 15, 자원해제를 위해서 using과 try/finally를 이용해라 (0) | 2010.07.03 |
최근댓글