디자인 패턴이란? 처음에 프로그래밍에 입문했을 때 이런 말을 들었습니다. '좋은 코딩 습관을 들여라' 여기서 좋은 코딩 습관이란 사람마다 생각이 다 다르겠지만, 저는 가독성이 좋은 코드를 작성하는 것이 좋은 코딩 습관이라고 생각합니다. 버그나 오류가 많은 것도 나쁜 코드겠지만, 성능이 좋다고 하더라도 나만 알아보거나 나조차도 못 알아보는 코드는 아무래도 좋은 코드가 아니겠죠. 그러나 작은 규모의 프로그램을 작성해도 설계를 할 때 있어서 실수나 문제를 피하기는 어렵습니다. 프로그램 설계에 있어 자주 발생하는 문제를 피하고, 좋은 코드를 지향하기 위해서 만들어진 설계 패턴이 디자인 패턴입니다. 컴퓨터 과학은 수십년간 발전을 이뤄왔기 때문에 내가 겪은 문제를 다른 사람이 겪지 않았을 확률은 매우 낮습니다. 그..