8월 24일(목)
질문
- 폴더 구조 설계와 어떤 함수를 어디다 두어야 하나? 어떤식으로 공부를 해야할까?
⇒ 역할에 따라, 맞는 레이어에 해당하는 폴더에 두어야 한다.
- 어떤식으로 프로젝트를 설계를 하는게 좋을까요?
⇒ 잘 모르면 유명한 곳의 프로젝트 구조를 참고 해봐라.(next.js 등) ,
⇒ 가장 쉬운 구조 ⇒ url을 따르는 구조
- 리액트 개발을 할 때, 커스텀 훅을 어떤 기준으로 나눠야 할까요?
⇒ 커스텀 훅은 어플리케이션 레이어에 해당한다.
⇒ UI를 상태와 분리하는 것은 커스텀훅의 역할이 아니다.
⇒ 재사용을 위해서만 만들어지는것이 커스텀 훅 (어떤 UI에도 속하면 안된다)
⇒ 경험이 적으면 판단하기가 어려울 수 있다.
⇒ 훅을 분리의 용도로 사용할 수도 있고, 재사용의 용도로도 사용할 수 있다.
⇒ 다만 재사용을 위해서 사용하는 훅을 커스텀 훅이라고 한다.
- useEffectEvent 같은 실험적인 훅은 어떻게 구현 할 수 있을까요?
⇒ 사용하지 않을 것 같습니다.
- 스토리북을 현업에서 자주 사용하는 편인가요? 어느정도 까지 학습을 추천 하나요?
⇒ 엄청 많이 사용한다.
⇒ 그러나 매우 심화적으로 사용하지는 않는 것 같다.
⇒ 리액트의 UI를 만드는데 아무 문제가 없다면 나중에 배워도 문제가 없다.
- next.JS를 써야하나요?
⇒ 좀 더 신중 할 필요가 있습니다.
⇒ 레이어에 대한 부분이 미흡하다.
⇒ 채용시장에 우위는 있습니다.
⇒ 리액트를 일단 제대로 공부하라.
- 이번 프로젝트에 리덕스를 사용하는게 좋을까요?
⇒ 멘토님의 개인적인 의견이지만 대부분의 스토어가 다 비슷하기 때문에, 가장 근본인 리덕스를 써보는게 좋다.
- context API 를 쓰는게 좋을까요?
⇒ 전역적인 상태가 아니면 props 드릴링을 해결하려면 context API 도 좋은 대안이다.
⇒ 그러나 성능이 떨어지기도 한다.( context 아래에 있는 컴포넌트는 전부다 리렌더링 되는 문제가 있음)
⇒ 그러나 지금 만드는 수준의 앱은 사용해도 무방하다.
조언
- 프론트는 대기업, 스타트업이 명확하게 나눠지지 않음. 인수한 곳이 많아 기업문화는 후진적이지만 타이틀은 대기업
- API 레이어가 스토어(application 레이어)에 들어가는것과 같이 레이어를 침범하는 행위는 지양해야한다.
- 5개의 레이어(UI, Application, API, Domain, Infra) 를 철저하게 분리해야한다.
- 이번 리액트 팀 프로젝트는 SNS 기능에 충실한 앱을 만드는 것을 추천합니다.