인터프리터 패턴언어의 문법을 정의하는 클래스를 이용하여 해당 언어의 문장을 해석하고 평가하는 디자인 패턴문법이 복잡하거나 자주 변경되지 않는 경우 유용반복되는 문제 패턴을 언어 또는 문법으로 정의하고 확장 가능주로 컴파일러나 스크립트 언어 인터프리터에서 사용됨 주요 구성 요소 1. AbstractExpression인터프리터에 의해 해석되는 공통 인터페이스 혹은 추상 클래스주로 interpret 메서드를 포함하며, 이 메서드는 특정 문법 규칙을 해석하는 역할 2. TerminalExpression문법의 기초 요소를 구현하는 클래스주로 숫자, 변수, 상수와 같은 기초적인 값들을 해석하는 역할 3. NonTerminalExpression문법의 복합 요소를 구현하는 클래스터미널 표현과 다른 비터미널 표현을 조..