E D R , A S I H C RSS

Pluggable Behavior

Pluggable Behavior

객체의 행동을 어떻게 파라메터화할것인가?

한 클래스의 다른 객체들은 일반적으로 로 다른 상태와 같은 행위를 가지게 된다. 만약에 다른 로직을 원한다면, 다른 클래스를 쓴다. 우리가 만드는 객체의 90프로는 이렇다. 가끔, 다른 클래스들은 당신이 문제에 대해 어떻게 생각하는가에 대한 효과적인 의사소통을 못 할 수도 있다.(?) 클래스가 많아짐으로써 당신은 짜증이 나고 위협을 받는다. 단 하나의 메소드를 오버라이딩하려고 브클래싱을 많이 하는것은 낭비다. 또한 이렇게 많이 브클래싱하면 유연성이 떨어지게 된다.

Pluggable Behavior를 쓸때에, 고려해야할 것들이 있따.
  • 어느 정도의 유연성을 원하는가?
  • 얼마나 많은 메소드가 동적으로 행동할 것인가?
  • 코드 따라가기가 얼마나 어려운가?
  • 클라이언트가 플러그될 행동을 알 필요가 있는가, 아니면 플러그된 객체 내에 감쳐줘야 하는가?

로 다른 행동을 유발하는 것에 사용될 변수를 추가하라. 단 하나의 메소드만 오버라이딩된 수백,수천개의 클래스를 만들지 말고, Pluggable Behavior를 사용하자.

해석 점점 이상해진다.--; 이 또한 C++에는 함수 포인터로 구현할 수 있을 듯 하다.

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:24:00
Processing time 0.0132 sec