React - Lit
lit.dev
현재 우리회사 서비스 코드들은 정~~~말 다양한 기술들로 개발이 되어있다.
Vue, React, JSP, WoowahanJS, 코틀린 등..
이런 다양한 기술들로 구성된 서비스의 프론트를 유지보수하고 기능 개발을 해야된다.
하지만 경제 상황이 나빠지고 IT 시장이 얼어붙는 지금 회사에선 인력과 시간을 충족시켜줄 여력이 없다.
지금 내가 관리하는 레포만 11개가 넘는거 같다..
이러한 상황에서 대규모 프로젝트가 생기고 일정은 언제나 그렇듯 촉박하다.
서로 다른 기술들로 이뤄진 서비스들..
다양한 기능개발..
하지만 화면으로만 봤을 땐, 똑같은 UI에 똑같은 기능들..
하나 만들어놓고 복붙하면 되는거 아닐까? 라는 개발을 모르는 분들의 시선..
하지만 프론트엔드 개발자라면 알 것이다.
어떤건 React, 어떤건 Vue, 어떤건 JSP, 이런식으로 되어있다면, 똑같은 기능에 똑같아보이는 UI라도 기능개발이 굉장히 애매해진다.
똑같은데 각 프로젝트마다 다른방식으로 개발을 해야된다.
하지만, 그보다 비효율적이라고 생각되는 작업도 없을 것이다.
그리고 시간도 인력도 없다.
정말 작년말, 올해초부터 생각해왔던 크로스 프레임워크 컴포넌트에 대한 생각이 간절해지는 시점이다.
모든 프레임워크, 환경에서 사용할 수 있는 컴포넌트를 개발할 수만 있다면, 이런 환경에 구애받지않는 개발자가 될 수 있을 것이다.
그래서 시간도 인력도 없지만 도전하는 중이다.
Litjs와 web component를 사용해 공통 컴포넌트를 만드는 중이다.
테스트 컴포넌트를 React에서 사용할 수 있게 래핑 처리를 한다. (참고: https://lit.dev/docs/frameworks/react/#why-are-wrappers-needed)
그리고 위와 같이 만든 공통 컴포넌트들을 umd, es 방식으로 각각 빌드하고 vue, react 환경에서 사용해보고, 일반 html 환경에서도 사용해봤다.
위와 같이 했더니 일단 일반 html 환경, vue, react 환경에서 잘 동작한다.
지금까지는 약간의 변형만 가한 간단한 테스트용 web component만 만들었는데, Headless UI 방식으로 만들 수만 있다면, 위에서 언급한 html, vue, react, jsp, woowahanjs에서 모두 사용 가능한 크로스 프레임워크 컴포넌트를 만들 수 있을 것 같다.
어렵지만.. 성공만한다면.. 생각한대로 안돼도 일단 ㄱ
다음 내용이 궁금하다면?
이미 회원이신가요?
2024년 6월 29일 오전 3:56