오늘 개발을 배운지 4주차가 되는날이다
처음엔 JS로 웹페이지 간단하게 만들고 서버는 파이썬 flask로 만들다가
최근에 React로 만들면서 프론트엔드에 더 가까워지는 느낌을 가지고 있다.
리액트를 시작하면서 제일 처음 알게된 개념이 라이프사이클인데 이게 강의들 듣다보니 클래스형과 함수형으로 나뉘어 설명을 듣다보니 오히려 처음에 더 개념 잡기가 어려웠고 특히 useEffect가 머지 라는 생각이 자꾸났다.
둘 다 이름 그대로 클래스 형으로 표현 하냐 함수형으로 표현하냐의 차이인데
요즘에 거의다 함수형으로 쓴다고 하지만 처음 강의에서 클래스형으로 라이프사이클에 대해 듣고 나니 함수형을 집중적으로 할때 더 이해가 잘되었던것 같다.
클래스형에서는 가상 돔에서 돔으로 옮기고 나서 업데이트나 추가적인 작업을 마운트르 나누어 따로 작업 할 수 있었다면
함수형에서는 이러한 부분을 해주는 훅이 바로 useEffect 였다.
처음 컴포넌트가 불려와질때 실행해주고 자료가 업데이트 될때나 언마운트 될때 그 상황에 맞게 해줄 수있는게 훅 하나로 표현 할 수있다는게 되게 편리해졌다고 생각이 들었다.
그리고 컴포넌트에 다른 컴포넌트를 가져와 재 사용하여 작업 속도를 올리는것도 되게 매력적이였다.
이렇게 기초를 다져나가면서 리액트에서 쓰는 훅들을 먼저 조금씩 배우고 그 이후에 상태관리를 위해 Redux를 배우고 SPA에서 여러 페이지를 표현하기 위해 Router-dom을 배우고
이후에는 리덕스에 자료를 아무리 저장해도 새로고침 하면 자료가 다 날라가기 때문에
firebase를 이용하여 자료를 저장하고 불러오고 하는 것들을 배워 기초적인 api틀을 잡으면서
이후에 xhr과 fetch로 간단하게 api로 데이터를 주고 받는것을 체험해보고
더 많은 기능과 편리를 제공해주는 Axios로 서버와 통신하는것을 공부했는데
aixos를 배우고 나서는 FB와는 따로 서버 저장소를 만들려고 mok api로 json-server로 간단하게 api 통신을 하면서 백엔드와 직접적인 접촉이전에 미리 api를 짜고 작업을 이어나갈 수 있도록 해주는 것을 배우고 json 서버를 배우고 나서 axios를 통해 FB를 제외하고 데이터를 저장하고 불러오고 수정하고 삭제하는 CRUD까지 구현해보고 이후에 더 배우고 싶은 것이 있는데
ReactQuery이다
리액트 쿼리를 지금 공부하고 있는데 따로 리덕스를 쓰지않고 서버를 통해 저장소로 만들어 상태관리를 하는 측면에서는 바로 데이터 수정하고 불러와서 적용이 되니까 axios로 데이터 부르고 저장하고 또 따로 리덕스로 데이터 저장하고 컴포넌트로 보내주고 하는것 보다 더 좋다고 느껴졌다.
지금은 리액트 쿼리를 공부하면서 CSS를 조금더 공부 해야겠다 싶어서 tailwind를 같이 공부하고 있고 이것을 어느정도 기초를 잡게 되면 TS와 오류 잡아내고 커스텀 훅과 커스텀 오류만드는 것을 더 공부 해볼려고 한다.
개발 공부를 안하다가 이제 처음 시작하면서 개념잡기도 어렵고 했지만 지금은 공부를 통해 개념이 잡혀가고 실력이 쌓이는게 느껴지기 시작하니 재미있게 공부를 하고 있다.
화이팅 해서 뛰어난 개발자가 되고싶다.