2024년 25주차 (6월 3주차)
승조원침실에서 주간정리를 쓴다.
정한 배에 타다
자세한 내용은 언급할 수 없지만, 한달간 항해를 떠나게 되었다. 배바배겠지만, 배에 타서 가장 먼저 "미로같다"고 생각했다. 내가 생활할 위치조차 처음엔 제대로 숙지가 안됐다. 여러번 길을 잃고 주변 사람들한테 묻고 나서야 그제야 조금 알겠다. 사실 아직도 잘 모르겠긴 하다.
많이.. 절망스러웠다. 생각 보다 리빙컨디션이 많이 안좋았다. 제가요? 여기서? 4주나요? 싶은 수준의
아직 미숙한게 많다. 가면 안되는 곳, 복장 규정, 정규 일과 등 눈치껏 많이 배워야 한다. 그래도 같이 온 사람이 있어서 망정이지, 혼자 왔었으면 정말 우울했을 것 같다. 좋아요, 잘 해볼게요. 새내기들도 해내는걸 내가 못해내겠음? ㅇㅇ 오히려 좋아 찢어줄게 완벽한 뱃사람이 되어주마.
항해중에 읽으려고
지금은 승조원 침실에서 누워서 글을 쓴다. 여기 있는 동안 정말 많은 책을 읽고, 정말 많은 글을 쓸 것 같다. 항해중엔 주간정리와 더불어 항해일지도 써야할지 모르겠다.
그 외에도..
- 관심있던 선임에게 먼저 연락해서 인스타와 트위터 맞팔했다. 진귀한 경험이였다
- SolidJS의
createResource/suspense가 작동하는 방법을 이해했다.- 리액트를 먼저 배우고 solid를 하니, 비슷한 목적의 서로 다른 두 기능이 헷갈렸다.
- 리액트는 컴포넌트 렌더링중 Promise를 throw해서 suspense한다.
- 그렇기에 정해진 로더 함수를 이용할 필요가 없다.
- 하지만 throw된 프로미스가 resolve될 때 다시 렌더링 프로세스가 resume되는게 아니라 그저 여러번 다시 실행할 뿐
- 이는 use 훅을 사용하면 양태가 달라질 수 있음
- Solid는 pending인 createResource가 있을 때 렌더링을 중단시키지 않고 fallback을 보여준다
- pending일 때 createResource의 데이터가 undefined이다. 이를 잘 생각하고 UI를 그려야 함.
- 그렇기에 createEffect를 적절히 사용하여 데이터를 반응형으로 잘 설계하여함
- 위 차이를 제대로 이해하는데 오래 걸렸다. 내 취향에 더 맞는 설계는 solid같다.
- 데이터를 보여주는 컴포넌트에서 현재 데이터가 정규형과 다른 형태일 때 예외를 올바르게 처리하는 패턴을 배웠다.
- 예: Baking News에서 뉴스레터를 생성하는 화면
- 관심사 혹은 사용할 출처가 설정되지 않았을 때: NoInterestsError 혹은 NoUsingProviderError의 인스턴스를 throw한다
- 이를 ErrorBoundary에서 catch하고
처리할 수 있는 유형의 에러라면 fallback에 컴포넌트를 렌더링하고(관심사 설정 / 사용할 출처 지정) - 아니라면 throw해서 위로 던지기
국방창업경진대회 예선을 제출했다. 결과는 항해중에 나온다. 팀원들이 잘 말해주겠지~~