v (demo)
예전에 기업 과제 전형으로 작성했던 앱입니다.
React.js와 비슷하게 동작하는 Virtual DOM 라이브러리를 작성하고, 그 라이브러리를 이용해 과제에서 요구하는 애플리케이션을 작성했었습니다.
이 레포지터리에 있는 코드는 당시 작성했던 애플리케이션 대신, 단순한 애플리케이션으로 변경되어 있으며 많은 부분이 제외되어 있습니다.
실제 작성했던 부분에서 빠진 것은 아래와 같습니다.
- 원래 작성했던 애플리케이션
- state 변경을 통한 update와 라우팅을 시연하는 용도로 재작성했습니다.
- End-to-End Test
- 원래는
tape
와testcafe
를 사용했습니다.
- 원래는
- Global State Manager
- 직접 만든 store 구현체를 사용했었습니다. 이 데모에서는 제외되어 있습니다.
그 외에 URL Routing이 미흡하고 Scoped style이 지원되지 않습니다. 또한 jsx 대신 createElement라는 함수를 사용합니다.
실제 사용은 정말로 추천드리지 않으며 Virtual DOM이 어떻게 동작하는지 간략하게 파악하는 용도로 보실 것을 권장합니다.
Virtual DOM의 동작 원리를 코드로 확인하고 싶으신 분들은 src/v
디렉터리를 확인해주세요.