피드로 돌아가기
I spent 10 years building a lightweight PHP framework for WEB application development
Dev.toDev.to
Frontend

DOM 의존성 제거 및 CMA 패턴 기반의 서버-클라이언트 통합 프레임워크 설계

I spent 10 years building a lightweight PHP framework for WEB application development

Oleg Ponomarenko2026년 4월 12일7intermediate

Context

전통적인 WEB 개발의 HTML 태그 기반 마크업과 Client-Server 간의 코드 분리 구조로 인한 생산성 저하 발생. Async 처리 및 DOM 조작에 소모되는 리소스를 줄이고 Business Logic 중심의 개발 환경 필요성 증대.

Technical Solution

  • CMA(Construct – Metadata – Assembly) 아키텍처 도입을 통한 애플리케이션 구조 표준화
  • 모든 구성 요소를 공통 기반 인터페이스인 Construct 객체로 추상화하여 DOM 직접 조작 배제
  • 객체 기반 Metadata 생성 로직을 통해 DOM 구축, Reactivity 구현, API 생성 등 다목적 출력 지원
  • 서버측 PHP와 클라이언트측 JavaScript 간의 동일한 변수 및 객체 모델 공유 구조 설계
  • 템플릿과 마크업을 완전히 제거하고 Class 기반의 상속 및 계층 구조를 통한 UI 컴포넌트 배치
  • Metadata 기반의 Assembly 과정을 통한 최종 WEB 페이지 변환 프로세스 구축

1. UI 컴포넌트를 DOM 요소가 아닌 비즈니스 도메인 객체로 추상화하여 관리하는 방안 검토

2. 서버와 클라이언트 간의 상태 및 객체 모델을 동기화하여 API 통신 오버헤드 감소 가능성 분석

3. Metadata 중심의 렌더링 파이프라인을 구축하여 동일 로직 기반의 다중 출력(Web, PWA, API) 환경 설계

원문 읽기