일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- TypeScript
- CRUD w ReactQuery
- 멀티스레드
- refactoring
- teave
- 짝선배 짝후배 매칭 웹 개발 회고
- Spa
- 멀티프로세스
- error
- wanted-preonboarding-course
- CS
- 회고
- Today
- Total
목록전체 글 (27)
깊고 넓은 삽질
원티드 프리온보딩 5월 주제로 '프론트엔드 주니어를 위한 네 가지 질문'이 나왔다. 내가 좋아하는 오종택님의 강의라 꼭꼭 챙겨보려 한다. 사전 과제로 '나'에 대한 다섯 가지 질문을 주셨다. 글을 쓰다 보니 나에 대한 글을 쓰는 것이 생각보다 어렵기도 하고 귀찮았다. 그래서 어딘가에 게시하는 글이라는 압박감으로 나에 대해 스스로 성실하게 알아보기 위해 여기에 글을 남긴다.'나'는 어떤 성격을 가진 사람인가요? 환경에 영향을 많이 받고 순응하는 편이다. 누가 울면 같이 따라 울 정도로 남에게 동화도 잘되는 편이다. 눈치를 자주 보는데 잘 보진 못한다. 개인적인 판단은 사실보다 느낌에 의지한다. 작은 일에도 의미부여를 많이 하고 스트레스를 잘 받는다. 하지만 상황에 대해서는 순진할 정도로 낙관적으로 생각하..
React Router loader | React Router 공식 문서의 loader 링크 loader란 react router에서 path에 등록한 element를 랜더링하기 이전에 호출되는 함수다. react router 6.4버전 이후의 data router을 사용했을 때 loader를 사용할 수 있다. ... createBrowserRouter([ { element: , path: "teams", loader: async () => { return fakeDb.from("teams").select("*"); }, children: [ { element: , path: ":teamId", loader: async ({ params }) => { return fetch(`/api/teams/${pa..
리액트 쿼리는 mutate 함수의 옵션 값으로 onSuccess 콜백을 설정할 수 있다. mutate가 성공했을 때 호출되는 콜백함수다. 나는 주로 mutate 성공 시 mutate와 연관되는 쿼리들의 쿼리키들을 invalidate하게 해서 데이터를 동기화할 때 사용한다. 그런데 가끔 mutate를 기다리지 않고 onSuccess를 호출하는 것 같은 때가 있다. 아래의 코드는 찜하기(favorite) 훅의 구현이다. 어딘가 잘못된 코드 ... const { data: favorites, ...rest } = useSuspenseQuery({ queryKey: [queryKey.favorite], queryFn: async () => { const res = await apiInstance.get(`/fa..
Tailwind CSS를 다운받으려고 공식 홈페이지에 들어갔는데 이상한 점이 있었다. 공식 홈페이지 예시에서 Tailwind CSS를 개발 종속성으로 다운받고 있었다. Tailwind CSS는 프로덕션 단계에서 빌드할 때 필요한거 아닌가라는 의문이 들었다. npm 공식 문서에서는 종속성과 개발 종속성을 다음과 같이 정의하고 있다. "dependencies": Packages required by your application in production. "devDependencies": Packages that are only needed for local development and testing. - npm Docs | Specifying dependencies and devDependencies in..
짧은 기간동안 다양한 사람들과 팀 프로젝트를 할 기회가 있었다. 각 프로젝트를 진행한 시간도 모두 2주 내외로 짧기도 하고 쉬는 기간도 짧아서 바로바로 회고록을 쓰지 못했다. 그래서 이 포스팅 하나에 각 프로젝트에 대한 짤막한 회고를 적고자 한다. 아래의 모든 프로젝트에서 팀장과 풀스택을 맡았다. 프로젝트의 결과물들은 현재 배포를 중단하였습니다. 시연 영상과 발표자료는 구글 드라이브 링크를 참고해주세요. 1. 침착맨 팬 페이지 만들기 프로젝트 (2주) Typescript, React, Express, MongoDB GitHub - calmdownmanfanpage/calmdownmanfanpage: 침착맨 팬페이지 침착맨 팬페이지. Contribute to calmdownmanfanpage/calmdow..
이 글은 MSA 혹은 Monorepo를 실제 서비스에서 구축해본 경험이 없는 초보 개발자의 글입니다. 정확하지 않은 정보가 있다면 피드백 부탁드립니다. 모노레포는 서로 다른 프로젝트를 하나의 레포에 관리할 때 사용하는 전략이다. 여기서 서로 다른 프로젝트는 어떤 의미일까? 만약 할 일 관리 앱에서 클라이언트와 서버가 있는데 이를 하나의 레포에서 관리한다고 하면 모노레포 전략이 필요할까? 모노레포의 의의 모노레포는 MSA의 단점에서 나온 전략이다. Micro Service Architecture는 서비스, 즉, 프로젝트가 각각 분리되어있는 환경이다. MSA는 어떻게 나왔을까? 다이어리 앱을 만든다고 가정해보자. 다이어리에는 할 일 관리와 달력이 필요하다. 다이어리 앱이 점점 고도화되면서 할 일 관리와 달력..