[원티드 프리온보딩] TIL - (11)

5월 15일

개인 과제 완료 및 제출

개인 과제를 완료하고 리드미까지 작성하여 제출하였다. 코드를 더 간략하게 할 수 있었을 것 같음에도 그러지 못했다는 점, 추가해보고 싶던 기능을 추가하지 못했던 점 등 아쉬운 부분들도 있었지만 요구 기본 구현 사항과 추가 구현 사항은 일단 모두 완료했고, 이렇다 할 버그도 없는 것 같아서 그나마 다행이다. 또한 과제 구현 그 자체보다 구현을 하기 위해 밤새 한 이론 공부들이 앞으로 큰 밑거름이 되줄 것이라는 것을 알고 있기 때문에 어서 더 공부하고 개발하고 싶다.

그립컴퍼니 개인 과제 리뷰

require는 사용하지 않는다.

require는 과거에 쓰이던 구문으로 대부분 import로 대체되었다.

여러 곳에서 사용될 만한 useEffect 등은 커스텀훅으로 빼면 좋다.

같은 useEffect가 반복되는 상황이라면 커스텀 훅을 만들어 관리하면 코드의 중복을 줄일 수 있을 뿐만 아니라 유지 보수적인 측면에서도 유리하다.

주소에 입력된 쿼리스트링을 담아주면 검색결과를 공유할 수 있다.

내부적으로만 통신이 이루어지면 사용자는 현재 검색하고 있는 화면에 대한 정보를 알 수가 없다. 이 때 주소에 쿼리스트링을 적절히 담아주면 사용자는 이를 활용하여 현재 위치를 아는 것은 물론 공유를 할 수도 있다.

text-align start, end (좌행서 우행서)

CSS의 text-align 속성에서 start와 end는 추가된지 얼마 안된 실험적인 기능이다. 국가 별로 언어에 따라 좌에서 우, 혹은 우에서 좌로 읽는 경우가 다른데, 이것을 고려하여 소개된 CSS이다. 그러니까 평소엔 좌로 정렬할 땐 left를, 우로 정렬할 땐 right를 사용하면 된다.

코드를 줄이기 위해 가독성을 해치는 행위는 절대 금물

괜히 코드를 줄이려다가 변수나 함수의 이름이 직관적이지 못하게 되거나, 성능적으로 문제가 생기는 코드가 작성될 수 있다. 항상 가독성과 성능을 고려하며 코드를 짜도록 한다.

Session

글자 강조(볼드 처리)는 mark 태그

쓸데 없는 span 태그나 스타일링을 추가하지 않아도 된다.

Context API는 너무 지저분하다.

관리하는 상태가 많아질 수록 코드의 길이가 점점 길어지고 Cascading 현상이 극심해진다.

🔗Redux-Toolkit

리덕스를 더욱 편리하게 사용하게 해준다. 기본 리덕스는 사용 방법에 있어 작성해야 하는 코드도 많고 구조도 Context에 비해 그렇게 간단하다고 보기는 힘들지만 toolkit의 경우 CRA에선 원활하게 사용할 수 있다.

🔗React-Query

SWR처럼 데이터 페칭을 더욱 효율적으로 해주는 라이브러리이다. SWR이 가진 기능들과 대부분 유사하지만 좀 더 세세하고 추가적인 기능이 많이 포함되어 있다.