우리(컴퓨터공학과 학부생)가 DesignPatterns를 공부해야만 하거나 혹은 할 필요가 있을까?
----
제 개인적인 의견으로는, 다른 것들과 마찬가지로 뭐든지 공부한다고 해서 크게 해가 되지는 않겠지만(해가 되는 경우도 있습니다 -- 다익스트라가 BASIC을 배워 본 적이 있는 학생은 아예 받지 않았다는 것이 한 예가 될까요?) 공부해야 할 필요가 있겠는가라는 질문에는 선뜻 "그렇다"고 답하기가 쉽지 않습니다. 여기에는 몇가지 이유가 있습니다. (제 글을 "DesignPatterns를 공부하지 마라"는 말로 오해하지는 말아 주기 바랍니다)
우선 효율성과 순서의 문제입니다. DesignPatterns는 이미 해당 DesignPatterns를 자신의 컨텍스트에서 나름대로 경험했지만 아직 인식하고 있지는 않는 사람들이 공부하기에 좋습니다. 그렇지 않은 사람이 공부하는 경우, 투여해야할 시간은 시간대로 들고 그에 비해 얻는 것은 별로 없습니다. 어찌 보면 아이러니칼하지만, 어떤 디자인 패턴을 보고 단박에 이해가 되고 "그래 바로 이거야!"라는 생각이 든다면 그 사람은 해당 디자인 패턴을 공부하면 많은 것을 얻을 겁니다. 하지만, 잘 이해도 안되고 필요성도 못 느낀다면 지금은 때가 아니라고 생각하고 책을 덮는 게 낫습니다. 일단은 다양한 프로그램들을 "처음부터 끝까지" 개발해 보는 것이 중요하지 않나 생각합니다. (see also WhatToProgram)
다음은 우선성의 문제입니다. 과연 DesignPatterns라는 것이 학부시절에 몇 달을 투자(실제로 제대로 공부하려면 한 달로는 어림도 없습니다)할만 한 가치가 있냐 이거죠. 기회비용을 생각해 봅시다. 좀 더 근본적인 것(FocusOnFundamentals)을 공부하는 것은 어떨까요?
more to come
--JuNe
----
제 개인적인 의견으로는, 다른 것들과 마찬가지로 뭐든지 공부한다고 해서 크게 해가 되지는 않겠지만(해가 되는 경우도 있습니다 -- 다익스트라가 BASIC을 배워 본 적이 있는 학생은 아예 받지 않았다는 것이 한 예가 될까요?) 공부해야 할 필요가 있겠는가라는 질문에는 선뜻 "그렇다"고 답하기가 쉽지 않습니다. 여기에는 몇가지 이유가 있습니다. (제 글을 "DesignPatterns를 공부하지 마라"는 말로 오해하지는 말아 주기 바랍니다)