전체 글

분할정복
시간이 왜이렇게 빠르게 가지? 벌써 8주차가 다 지나갔네. 이번 주는 CSS-in-JS 라이브러리 styled-components를 다뤘는데, 확실히 props로 다이나믹하게 스타일을 변경하는 기능은 강력하고 편리하다. 다만, 적당한 갯수의 프로퍼티를 가지고 범용적으로 사용하고 싶었는데 dark theme를 설정하다보니 오히려 지엽적으로 theme 프로퍼티를 지정하게 되더라.. (예를 들면, 어떤 버튼의 dark theme 텍스트는 흰색인 반면, 다른 버튼 텍스트는 옅은 회색이라 AButton: "#fff", BButton: "#E2E2E2" 이렇게 지엽적으로 작성하게 됨) 근데 이 부분은 CSS-in-JS 뿐만 아니라 CSS-in-CSS에서도 발생하는 부분이므로, 디자인 시스템을 구축할 때 프로젝트 구..
· 회고
7주차 학습 내용 React Router v6.4를 학습한 주차였다. 라떼는 v5로 라우팅을 처리했었기 때문에 새롭게 학습해야하는 부분이 있었지만, 본질적인 원리는 다를게 없어 어려움없이 사용법을 금방 익혔다. 그래서 라이브러리 자체 사용법보단 라우트 컴포넌트의 테스트 코드를 작성하는 방법을 중점적으로 학습했다. 회고 Keep 주어진 키워드를 빠르게 선 정리한 다음 강의를 들으면서 내용을 추가하는 방법이 시간 절약에 효율적으로 작동. '시켰으니까 해야지'에서 벗어나 궁금한 것이 생기면 능동적으로 행동하기. Problem 기존의 지식이 희미해지고 있다. 학습 내용이 여기저기 꼬여서 머릿속에 온전히 남아있지 않는다. Try 장기기억화를 위해 복습 주기화를 실행하고, 정리한 키워드를 인출학습한다. (그래서 링..
· 회고
6주차 학습 내용 관심사의 분리(SOC)가 다시 등장했다. 그 만큼 중요한 키워드라는 것을 강조하는 것! 리액트 컴포넌트가 UI를 외부 저장소(External Store)가 비즈니스 로직을 담당한 관심사를 분리를 학습한 주차였다. 직접 외부 저장소를 만들고 컴포넌트에서 사용해보는 연습을 해봤는다. 강의에서는 액션 객체의 페이로드를 제너릭 타입으로 받고 있는데 이 리듀서들이 담기는 배열에 각 요소들인 리듀서의 액션 제너릭 타입은 무조건 number로 받도록 고정시켜놔서 다른 값이 들어오면 뻥뻥 터지길래 해당 타입 제약을 제거하고 느슨하게 작업했다. 타입스크립트 너 언제쯤 친해질래..? 회고 Keep 어색했던 테스트 코드 작성과 조금씩 친해지고 있다. 그냥 흘리는 것이 아닌 강의 내용과 개념에 대해 지속적으..
· 회고
본격적으로 테스트 코드를 작성해보는 주차였는데 작성 경험이 전무한지라 뭐가 맞고 틀린지 모르겠다. 이벤트 핸들러는 A 컴포넌트에 있고, 처리 결과를 B 컴포넌트에 렌더링해야 하는데 둘은 관계가 없는 이웃한 컴포넌트라 하나의 파일에서 테스트를 할 수 없는 상황이었다. 하나의 부모 컴포넌트에 몰아 넣으면 되겠지만, 기존 UI의 구조가 달라지므로 mock data로 넘겨주어서 개별적으로 테스트를 수행했다. 어쨌든 테스트 코드 작성은 조금 익숙해졌는데 올바른 접근 방법은 잘 작성된 테스트 코드를 많이 보고 경험하면 익숙해질 것 같다. Keep 데브노트를 정리하며 이해를 동반한 정의 암기 테스트 코드 작성 감잡기 Problem 기상시간이 일정하지 않음 - 새벽까지 과제를 하다보니 기상시간이 들쑥날쑥했다. 반복학습..
· 회고
이번 주차는 정리할 키워드가 많아서 늘어지는 한 주였다. 찾은 개념을 컨씨 + 컨브이 해도 되겠지만, 그게 무슨 소용이람 내가 기억하는 게 아니라 그냥 데이터 쪼가리로 남는 거지! 게다가 대충 정리하면 나중에 내용 더 추가해야지 하다가 귀찮아서 안 하게 된다. 보기 좋은 떡이 먹기도 좋다고 나중에 다시 볼 때 애정이 생겨 살을 더 붙이던 한다. 할 때 제대로 해야 제대로 된 결과물을 내는 편 [어 너도? 야 나도] 평일, 주말 구분없이 코딩도 하고 공부도 하고 열심히 뭘 하고 있지만, 문뜩문뜩 미래에 대한 불안감때문에 깊은 생각에 빠지곤한다. 각자의 고민은 다를테지만 외국계 기업에 다니는 사람도 불안감을 느끼고, 크리에이터로서 몇십만명이 구독하는 채널을 운영하는 사람도 미래에 대한 불안감을 똑같이 느끼고..
· 회고
저번 주차부터 집중력 이슈가 있었는데 이번 주가 연장선이었고 그 정도가 절정을 찍어버렸다. 다들 멀쩡했는데 어느 순간부터 기분이 다운되고 아무것도 하기 싫은 날을 경험한 적 있을 것이다.(아닌가) 어디서 영상을 봤었는데 사람은 관성의 법칙으로 인해 해야 하는 것을 알고 있으면서도 관성 때문에 상태가 바뀌지 않고 계속 유지되는 것이다. 나는 이 관성을 깨기 위해 일단 밖으로 나갔다. 그리고 카페에 갔다. 평소보다 학습 퍼포먼스가 조금 떨어지긴 했지만, 이게 무슨 상관인가 관성을 깨고 일을 했으니 목적은 달성했다. 이렇게 해냈으니 속으로 '잘했어. 잘하고 있고, 내일도 잘 할 거야.' 칭찬 한 마디 해주면 한결 마음이 편안해진다. 돌이켜보니 나는 나에게 칭찬보단 채찍질을 많이했었다. 다들 자기 자신에게 칭찬..
· 회고
오랜만에 원티드 프리온보딩 팀 동료들을 만나서 즐거운 시간을 보냈다. 개발자들 아니랄까봐 항상 만나면 빠지지 않는 개발토크 .. ㅋㅋ 다들 자제하고 싶어하지만 업으로 삼고있기 때문에 어쩔 수 없는 부분인 것 같다. State를 업데이트 하는 과정 얘기를 꺼냈는데 React가 렌더링 전에 state를 업데이트 하는 방법에 대해 러프하게는 알고 있는데 다들 자세한 부분까지는 인지하고 있는 것 같진 않았다. 기회를 틈타 나름 공부했다고 설명을 해줬는데 살짝 뿌듯했다 ㅋㅋ 업데이트된 최신 리액트 문서 설명이 정말 잘 되어 있으므로 다들 한번씩 읽어보길 바란다. [자신감] 게임처럼 경험치 시스템이 있다면 얼마나 좋을까? 경험치를 얼마나 쌓았고 레벨은 몇이고 능력치는 어느 정도 올랐는지 지금 스펙은 어느 정도인지 ..
· 회고
리액트 프로젝트 환경을 구성할 때 항상 CRA를 이용했는데 그러다보니 자동으로 셋팅해주는 웹팩, 바벨과 같은 전체적인 프로세스라 해야하나 그런것들에 대해 잘 몰랐다. 회사에서 작업할 땐 하루하루 살아남느라 기능 개발만 주구장창 하다보니 세부적인 것을 알지 못했고 알고 싶지도 않았다. 나중에 자연스럽게 알게 되겠지 하며 넘겼는데 시간이 지나다보니 기능을 사용할 줄 만 알고 왜 이렇게 되는지는 모르는 상황은 지속되었고, 이 때부터 위기감을 느껴 현재의 나는 ‘이건 왜 이렇지?’ 에 포커스를 맞추어 학습하는 습관을 들이고 있다. 물론 굉장히 피곤하고 힘들다 하나를 해결하고 넘어가면 좋겠지만 궁금증이 연쇄적으로 발생해서 무한 츠쿠요미에 빠지게 되곤한다. 파훼법이 있을려나..? 키워드 당 할애 시간을 분배해야 할..
한우콩
Divide and Conquer