Tip

*패턴

Mr.Martin 2010. 7. 20. 23:31
반응형


요즘에 디자인 패턴(design pattern)이 유행하고 있다.
모든 건축물에 일정한 패턴이 있고, 이 패턴을 이용하여 설계할 수 있듯이, 모든 프로그램에도 일정한 패턴이 있고 이 패턴을 본따서 프로그램을 작성할 수 있다는 것이다.
남들이 이미 작성한 바 있는 패턴을 따르기 때문에 짧은 시간에 프로그램을 더 많이 작성할 수 있다.
이런 패턴 개념은 프로그래밍 분야에 충격을 주었고, 지금 이 패턴을 익히고자 하는 사람들이 많다.
앞으로도 꾸준히 연구되어야 할 분야이다.
그러나 패턴은 어디까지나 패턴일 뿐이다.
즉, 여러 프로그램에서 나타나는 동일한 형상일 뿐이지 프로그램 자체는 아니다.
패턴이 프로그램 제작에 도움을 줄 수 있지만, 프로그램 자체를 완성케 하는 것은 아니다.
결국 프로그램 자체를 완성하는 것은 사람의 두뇌다.
패턴을 응용할 능력도 사람이 두뇌에서 나온다.
이렇게 생각하면 패턴보다 더 중요한 것이 사람의 두뇌라고 할 수 있다.
즉, 프로그래머의 창의성이나 응용력이 패턴 그 자체보다도 중요하다는 것이다.
그런데 패턴 중심의 교육은 프로그래머의 창의성이나 응용력을 떨어뜨릴 위험이 있다.
예술 작품을 완벽하게 모방해 낼 수 있는 사람들이 결코 다빈치나 고호가 될 수 없듯이, 패턴을 줄줄이 외우고 그것들을 이용해 프로그램을 작성할 수 있다고 해서 창의성을 발휘할 수는 없는 것이다.
패턴 중심의 교육에 의해, 다른 사람들의 아이디어·알고리즘·패턴에 매달리기 시작하면 그런 경향이 지속될 가능성이 있다.
다른 사람의 결과물에 의존하는 경향이 심화될 가능성이 높아지는 것이다.
그러므로 패턴을 이용은 하되 의존하지는 않는다는 정신이 중요하다.
패턴을 가르치되 생산성을 높이기 위한 방편으로만 가르치고 창조성마저 저해하도록 해서는 안 된다.
 
2010년 07월 20일 17시 01분 22초