LCHH 아키텍처
LCHH Architecture![]() |
Loader-Content-Handler-Handler 또는 "LCH"는 HTTP 요청-응답 사이클과 3계층 웹 구조를 따라 면밀히 모델링된 웹 프로그래밍 아키텍처입니다.
이름에서 알 수 있듯이 LCHH는 다음 4가지 주요 구현 컴포넌트를 정의합니다.
- 로더는 나중에 콘텐츠를 주입하기 위해 부분 업데이트 영역을 식별하는 ID의 DIV 컨테이너입니다.
- 정적 정보와 인터랙티브 요소를 모두 포함하는 콘텐츠('트리거'라고도 함)
- 버튼 클릭 등 다양한 트리거 이벤트를 처리하는 클라이언트 측 핸들러
- 클라이언트측 핸들러가 송신하는AJAX 요구에 응답하는 서버측 핸들러.서버측 핸들러는 일반적으로 갱신된 내용을 앞에서 설명한 로더에 피기백하기 전에 데이터베이스 CRUD 작업을 수행합니다.
XHR 주입과의 비교
LCHH는 XMLHttpRequest의 responseText를 사용하여 내부 라우터를 대체합니다.타겟 DIV 컨테이너의 HTML 값.이것은 일반적인 AJAX 패턴입니다.단, XHR 주입만으로는 LCHH의 합계가 되지 않습니다.LCHH를 처음 로드할 때 "Content"는 빈 컨테이너를 로드한 후 다른 AJAX 라운드 트립으로 컨테이너를 채우는 것이 아니라 서버 측에서 즉시 생성됩니다.데이터베이스 변경 후 갱신된 콘텐츠를 피기백하는 것도 LCHH의 특징입니다.
LCHH는 코드를 다음 4가지 카테고리로 분류합니다.
- 로더 및 클라이언트 측 핸들러(JavaScript 함수)는 URI에서 직접 액세스할 수 있는 "사용자 대면" 파일에 저장됩니다.
- 사용자용 파일에 포함할 수 있는 서버측 스크립트.이 스크립트는 "콘텐츠"를 출력합니다.
- 다양한 AJAX 콜을 호출하기 위한 단일 콜포인트 역할을 하는 "루팅 스크립트"
- 서버측 핸들러로, 통상은 「포함」또는 「icl」서브 디렉토리에 보존됩니다.대부분의 경우 각 핸들러는 개별 스크립트파일에 실장됩니다.
레퍼런스
- "LCHH vs. MVC". October 10, 2013. Retrieved April 28, 2016.
- Dong, Schien (2015), There is No AJAX - The Art of Blending DHTML, PHP and MySQL (7th ed.), pp. 338–343, ISBN 978-1435774810