()은 프로그래밍 언어의 특정 구문을 해석/분석하는 컴포넌트 디자인에 많이 사용됩니다.

이 아키텍쳐의 기본 아이디어는 각각의 표현마다 클래스를 가지도록 하여 이를 조합하는 구조를 만드는 것입니다.

Interpreter pattern은 SQL 또는 통신프로토콜을 기술하는 언어 구현시 주로 이용되는 아키텍쳐
()은 과 같은 또는 특정 통신 프로토콜을 기술하기 위한 언어 등에 주로 응용되고 있습니다.

()의 장점이라 함은 동적인 설계가 가능하며, 최종 사용자가 프로그래밍하기 좋다. 즉, 인터프리터 프로그램을 쉽게 교체할 수 있기 때문에 유연성이 향상된다고 할 수 있습니다.

반면에 인터프리터 언어는 일반적으로 컴파일 언어보다 느리기 때문에 성능 문제가 발생할 수 있다는 단점이 있습니다.



facebook posting twit

  • AWS 기반 서버 없는 아키텍쳐(Server-less back-end architecture)
  • 넷플릭스 서비스 오토스케일링 아키텍쳐
  • 플러거블 스토리지 엔진을 가진 MySQL 아키텍쳐 – InnoDB는 인메모리 캐싱을 하는 고성능 솔루션
  • 아틀라시안 뱀부(Atlassian Bamboo)를 활용한 CI(Continuous Integration) 환경 구축
  • 아키텍쳐 패턴이란 – 소프트웨어 디자인 패턴
  • Blackboard pattern은 오늘날 NLU(Natural Language Understanding)이나 차량인식 등에 응용되는 아키텍쳐
  • MVC(Model-view-controller) pattern은 Django, Rails와 같은 웹 어플리케이션 개발에 주로 응용되는 아키텍쳐
  • Event-bus pattern은 Push Notification Service, 안드로이드 앱 개발에 주로 응용되는 아키텍쳐
  • Peer-to-peer pattern은 BitTorrent와 같이 파일공유 솔루션이나 P2PTV, PDTP와 같은 멀티미디어 프로토콜에 주로 이용
  • Broker pattern은 Apache ActiveMQ, Apache Kafka, RabbitMQ 등 메시지 미들웨어 같은 아키텍쳐에 주로 이용
  • Leave a Reply