firebase cloud fucntions 사용 보류

→ 수신자가 정보를 받아 특정 메서드를 실행하다면, 굳이 서버에서 함수를 실행할 필요가 없음.

→ 메서드 정의 필요

appendChild 등의 메서드를 적용하려면 dom 전체 맥락을 파악하기 위해 jsdom 사용을 고려하였으나 XSS 공격에 취약하여 DOMPurify를 사용을 생각했음

DOMPurify → XSS 공격을 방지

클라이언트 측에서 사용할 수 있는 DOM조작 메서드를 정의하고 수신자는 발신자가 보내온 DOM 조작 내용(json data)바탕으로 메서드를 구성

은닉화 → 클래스 vs 함수형

사용자가 접근해야하는 메서드와 접근할 수 없는 메서드 구분 필요 →

클래스로도 충분히 가능하나, 함수형 프로그래밍과 객체간의 은닉화를 고려하기 위해 함수형 선택을 하였습니다.

새로 생성한 DOM을 직렬화하여 서버에 전송하는 방법

→ clearChanges 메서드 사용 시

setAttribute의 name 입력 시 제한을 두어야 하는가? 비표준 속성을 활용하는 것은 개발자의 선택적인 부분이다. 반드시 비표준 속성을 활용해야만 하는 상황은 아마 없을지도 모른다. 하지만 상황에 따라서 비표준 속성이 필요할 수도 있고 혹은 비표준 속성을 활용하는 것이 조금 더 효율적일 수도 있으니 다양한 상황들을 고려해서, 만약 비표준 속성을 활용해야 한다면 data-*형태와 dataset프로퍼티를 사용하는 것이 조금 더 안전하다

PoC 방법론

→ 검증하는 방법. 자료 조사 필수, 그러나 키워드 위주로.