유용하고 강력한 상태 관리 라이브러리임에도 불구하고 힘들여 배워 놓고 사실상 한번도 사용해 보지 못했다. Redux는 자바스크립트 상태 관리 라이브러리로 다양한 데이터를 한곳에서 관리하고 여러 컴포넌트가 이를 구독함으로서 동작한다. 컴포넌트간 프롭으로 데이터를 전달하는 것과 달리 Redux에서는 데이터가 한방향으로 흐르게 되어 있다. Redux의 세가지 원칙 1. Single source of truth 데이터는 Store에서 가져오며 스토어는 하나만 존재할 수 있다. 즉 데이터는 한곳에서 관리된다는 의미이다. 2. State is read-only 데이터는 읽는 것만 가능하며 변경을 위해서는 액션 객체를 이용해서 변경하는 것이 가능하다. 3. Changes are made with pure functi..
항해99의 커리큘럼도 이제 종막을 향해 나아가고 있다. 처음 항해를 시작할 때의 나를 돌아보면 VS Code를 처음 사용하며 신기해하고 HTML 태그만을 이용해서 정적인 페이지를 만들고 자바스크립트를 통해 간단하게 움직이는 페이지를 만들고 기뻐하던 순간들이 떠오른다. 아직은 갈길이 멀게 느껴지지만 확실하게 두달 전의 나와는 다른 사람이 되었음을 느낀다. 어느정도 자신감도 생기고 시간만 충분하다면 뭐든지 할 수 있을 것 같은 기분이다. 함께 수강중인 동료들과 많은 선배들과 멘토분들이 도와주신 덕분이다. 독학했다면 겪어보지 못할 협업 과정을 통해 많은 것을 배우고 있다. 프론트 엔드 개발자라고 내 주특기인 리액트만 공부해서는 소통을 할 수 없다는 것을 깨닳는다. 최소한 API를 호출하면 어떤 일이 벌어지는지..
리액트 주특기를 학습하기 시작하고 첫 협업 프로젝트를 하게 되었다. 백엔드 팀과 프론트 엔드 팀으로 나뉘어 하나의 웹 앱을 만들어 내는 일로 기획부터 함께 진행하게 되었다. 다들 직장인이기 때문에 아주 복잡한 앱은 만들 수 없어서 간단한 앱을 구상하게되었다. 복잡한 앱을 만들어내는 것보다 납기(2주)내에 완성을 시키는 것이 중요하다고 하여 스코프는 크게 잡지 않았다. 우리가 기획한 앱은 릴레이 동화 프로젝트였다. 불특정 다수의 인원이 한줄씩 이어서 작정해서 동화를 이어나가는 기능을 구상했다. 필요한 기능은 회원가입, 로그인, 첫 동화 게시글 작성 기능, 이어쓰기 기능이 기본적으로 필요했고 이어서 서버에 저장된 데이터를 받아와서 화면에 뿌려주는 기능이 필요하다. 사이드 기능으로 글과 이어쓴 문장에 좋아요를..