본문 바로가기 메뉴 바로가기

HAMA 블로그

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

HAMA 블로그

검색하기 폼
  • 전체 (687)
    • 주인장 (9)
    • 잡동사니 (2)
    • 소프트웨어 사색 (81)
    • Rust (0)
    • tech shard (비공개) (0)
    • 그래픽스 (3)
    • 데브옵스 (5)
    • 데이터 가시화 (d3.js , Plotly, Gr.. (18)
    • 디자인패턴 (10)
    • 무들 (moodle) (17)
    • 보안 (6)
    • 뱅킹 & PG (5)
    • 블록체인 (55)
    • 알고리즘,자료구조 (4)
    • 서버 &컨테이너 & 도커등 (2)
    • 오픈소스, 미들웨어 (9)
    • 임베디드 (4)
    • 인터프리터 (4)
    • 하이브리드앱 (9)
    • 아이폰 (IOS) (10)
    • 안드로이드 (14)
    • 운영체제 (1)
    • 아마존 AWS & 클라우드 (5)
    • 테스트 (1)
    • 통계 & 머신러닝 & 딥러닝 (39)
    • Angular & React (3)
    • Akka (27)
    • CUDA (1)
    • Flask (5)
    • Go (17)
    • HAMA (3)
    • Hadoop (7)
    • Haskell (1)
    • IoT (32)
    • IoT 데이터 분석 (NILM) (10)
    • IoT 전기자동차 (4)
    • IDE & 기타 툴(tool) (3)
    • Javascript (12)
    • Java (31)
    • Kotlin (10)
    • Math (1)
    • Netty, Java IO (8)
    • Network (7)
    • NoSQL (7)
    • Node.js (1)
    • OpenMP,PPL (4)
    • OpenCV, Halcon (1)
    • OpenGL , WebGL (0)
    • PlayFramework2 (35)
    • Amp,CUDA,OpenCL,TensorFlow (1)
    • Python (37)
    • RDBMS (PostgreSQL) (11)
    • Scala (51)
    • Spark (5)
    • Spring (9)
    • UI , UX 디자인 (6)
    • VTK (1)
    • Vert.x (13)
    • WAS & 웹서버 (3)
    • Zookeeper (2)
    • C++ (비공개) (4)
      • 문법 (1)
      • TR1 (0)
      • Algorithm (0)
      • container (0)
      • Date Time (0)
      • Exception (0)
      • FileSystem (0)
      • Flyweight (0)
      • function (0)
      • Functor & binder (0)
      • Geometry (0)
      • Graph (0)
      • IO Stream (0)
      • InterProcess (0)
      • Interator (0)
      • Lamda (0)
      • Localization & UTF-8 (0)
      • log (0)
      • Math, numeric (0)
      • memory&pool (0)
      • meta class (0)
      • metwork & ASIO (0)
      • PropertyTree (0)
      • Regex (0)
      • Signal (0)
      • Singleton_template (0)
      • smartptr (0)
      • speed (0)
      • spirit (0)
      • string (0)
      • system (0)
      • thread & concurrent (0)
      • tokenizer (0)
      • util (0)
      • Timer (0)
    • Meeting (0)
    • OpusM (0)
  • 방명록

인터프리터 (2)
소형 SQL 인터프리터 만들기

* 작성되는글은 Holub on Pattern 을 보고 정리한것입니다. 먼저 BNF statement ::= INSERT INTO INDENTIFIER [LP idList RP] VALUES LP exprList RP | CREATE DATABASE IDENTIFIER| CREATE TABLE IDENTIFIER LP declarations RP| DROP TABLE IDENTIFIER| BEGIN | WORK | TRAN[SACTION]]| COMMIT | WORK | TRAN[SACTION]]| ROLLBACK [WORK | TRAN[SACTION]]| DUMP| USE DATABASE IDENTIFIER| UPDATE IDENTIFIER SET IDENTIFIER EQUAL expr WHERE ex..

인터프리터 2015. 5. 7. 09:38
Interpreter 패턴

GOF 의 디자인패턴중 하나인 인터프리터 패턴에 대해서 살펴보도록 하자. 인터프리터 패턴은 모든 종류의 GoF 패턴들 중에 가장 어렵다. 물론 인터프리터 자체를 만드는게 어렵 기때문에 덩달아 어렵다는 이야기이고, 모습 자체는 여느 디자인패턴과 비슷하다. 원래 디자인패턴이라는건 사실 모양은 다 비슷비슷하다. 그게 쓰여지는 의도에 따라서 패턴의 구분이 이루어진다. 인터프리터 패턴은 느낌 그대로 어떤 해석기, 즉 "간이언어" 를 만들기 위한 패턴이다. 예를들어 클라이언트-서버 프로그램을 만들때 , 프로토콜로 "사람이 자연스럽게 읽을수 있는 문법형태" 로 하자!! 라고 정할수있는데, 그때 사용하면 되겠다. 프로토콜 예로는 "Select * From Table" 이렇게~ 자 이 글에서는 "program repea..

디자인패턴 2015. 5. 6. 22:05
이전 1 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
  • 하이퍼레저 패브릭
  • 파이썬 동시성
  • Adapter 패턴
  • play 강좌
  • 스칼라
  • 파이썬 데이터분석
  • 이더리움
  • CORDA
  • play2 강좌
  • 플레이프레임워크
  • 스칼라 강좌
  • Play2
  • akka 강좌
  • Play2 로 웹 개발
  • Hyperledger fabric gossip protocol
  • Actor
  • 스칼라 동시성
  • 그라파나
  • 안드로이드 웹뷰
  • 파이썬 머신러닝
  • 엔터프라이즈 블록체인
  • 블록체인
  • 주키퍼
  • Golang
  • Akka
  • 파이썬
  • 파이썬 강좌
  • hyperledger fabric
  • 스위프트
  • 하이브리드앱
more
«   2025/07   »
일 월 화 수 목 금 토
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바