23.07.18
오늘 한 일
- Rust 구조체
- Gloddy 개발
하루 요약
- 12:30 ~ 16:30 : 카공
- 19:00 ~ 21:00 : 집공
🤔 생각
리액트에서의 전역 상태
.. 사용하기 쉽고 편하니까 남용하고 있을 지도 모른다.
"전역 상태" 가 맡은 역할은 말 그대로 전역
의 상태를 맡는 것이다. 전역이라고 함은 프로덕트의 전체에 영향을 끼칠 수 있는 상태라는 것이다.
근데 단순히 props drilling이 깊어져서 불편하다고 전역 상태를 사용하는 것은 좋지 않은 것 같다.
프로덕트가 점점 커지고, 컴포넌트를 분리를 많이 하게되면서 복잡해지니 전역 상태로 관리하게 되는 경우가 많다. 물론 꼭 필요한 상황에서는 전역 상태를 사용해도 좋다고 생각한다.
하지만, 한 페이지에서만 관리되는 state도 전역 상태 라이브러리에 의존하는 건 아니라고 생각한다. 특정 범위에 국한된 상태는 그 범위 내에서 관리하기 위해 Provider
로 묶어서 관리하는게 더 좋은 것 같다.
Context API를 사용하면 성능에 문제가 있다, 렌더링이 계속 발생한다 하는 말이 많긴 하지만, 전역으로 묶지 않고 특정 스코프에서만 묶는 건 성능에 크게 영향을 가지 않으면서 상태를 의미있게 관리할 수 있다고 생각한다.
앞으로의 공부 방향
보여주기 식 코드가 아닌, 내가 짠 코드를 완벽히 이해하고, 다른 사람들에게 설명할 수 있어야 한다. 당위성이 있는 코드
를 짜고 싶다.
그래서, 기본을 더 다지려고 한다. 기본 뿐만 아니라 원론적으로 생각하려 노력해야겠다. 그냥 아무 생각 없이 라이브러리를 사용하고 구조를 짜고 하는게 아니라, 내가 왜
이 기술을 사용해야하는지, 왜
이렇게 구조를 짜야하는지 충분히 생각하는 습관을 들여야겠다.
그리고 요즘 너무 Copilot 같은 것들이 잘 짜줘서 내가 해야 할 생각을 대신 하니까 점점 내 코드의 이해도가 떨어지는 것 같다. 한번은 내가 이해하지 못해도 동작하니까 그냥 쓰는 경우도 있었다.. 의존하지 말자😅
+) 라이브러리 많이 까보면서 분석해봐야겠다. primitives
라이브러리가 보기 편하고 깔끔하다. 토스의 Slash 라이브러리도 한번 쭉 보면 좋을 것 같다. 분석하다가 개선할 점 찾으면 기여도 하고 일석이조!
내일 할 일
- 타입스크립트 스터디 시작
- Gloddy 개발