solidjs가 뭔데

지속가능한개발·2023년 10월 28일

궁금한것

목록 보기
10/10

https://www.youtube.com/watch?v=A_dUsSzxwkI

solid하고 react 차이점이 뭔지 궁금했다
solid는 useState와 모양이같고 목적도 완전같은 signal을 쓰는데
둘은 동작하는 방법이 다르다고 한다
signal은 usestate의 기능에 더해
이벤트리스너들의 의존성을 구독의 형태로 묶어서 갖고 있는다고 한다

react의 useState는 상태가 바뀌면 그 상태가 포함된 컴포넌트 트리를 전부 렌더링 하는 반면
solid는 signal바뀌는것에 의존하는 컴포넌트만 다시 렌더링한다
즉 그 상태가 포함된 컴포넌트의 하위 컴포넌트를 모두 렌더링하지는 않을 수 있게된다

svelte는 컴파일러다
컴파일러는 모든 상태를 추적하고 최적화 해놓고 흑마법이 존재하지만
solidjs는 그렇지않다
주니어 개발자들은 이런 블랙박스를 이해하지 못하는 경우가 많고
solidjs는 그저 이벤트리스너들이 연결되어 있는것일 뿐 명확하다

이런맥락에서 solid는 react와 더 비슷하고 svelte와는 다르다고 한다
나는 설탕구문이나 흑마법이 생산성에서는 편리하지만 소스가 복잡해졌을때
이해하기 더 힘들어지는 경우를 제법 겪어서 더 명확한게 좋긴하다

profile
좋은 프로그램을 만들 수 있는 사람이 되기 위해 꾸준히 노력합니다

0개의 댓글