DSL
🧩 DSL이란?
정의
DSL(Domain Specific Language)은 특정 문제 영역을 해결하기 위해 만든 전용 언어다.
DSL은 범용 언어처럼 모든 문제를 해결하기보다는, 특정 도메인에서 자주 반복되는 표현을 더 쉽게 쓰기 위해 만들어진다.
⚙️ 특징
- 표현 의도가 분명하다.
- 도메인 용어를 그대로 표현할 수 있다.
- 반복 작업을 줄이는 데 유리하다.
- 특정 영역에 맞춰 문법이 좁고 명확하다.
✅ 장점
- 가독성이 좋다.
- 도메인 용어를 그대로 표현할 수 있다.
- 잘 설계되면 비즈니스 의도가 드러난다.
⚠️ 단점
- 학습과 유지보수에 시간이 필요하다.
- 일반 언어보다 범용성이 낮다.
- 도메인이 바뀌면 DSL도 함께 수정해야 할 수 있다.
🧪 예시
- SQL
- HTML
- 정규표현식
- Querydsl
- Elasticsearch Query DSL
🔍 DSL이 자주 쓰이는 곳
- 데이터 조회와 검색
- 문서 구조 표현
- 텍스트 패턴 매칭
- 특정 도메인 규칙 표현
📌 정리
- DSL은 특정 영역에 맞춘 전용 언어다.
- 반복되는 표현을 읽기 쉽고 쓰기 쉽게 만든다.
- Querydsl이나 검색 DSL 같은 사례가 대표적이다.
댓글남기기