👱♂️간헐적 회고
나오늘 뭐했냐
내가 잘 모르는게 많다는 것이 많이 체감된다.
공부해볼 게 넘쳐나서 신나기도하면서 공부기간을 좀 더 오래잡고 싶다는 욕구가 생기는 것 같다.
아는 것보다 모르는게 당연히 더 많겠지만 지금 당장 공부하고 싶어서 시도하고 있는 것들만 해도
24시간이 모자란 느낌이다.
1. Error Boundary를 통한 선언적 에러 핸들링
-> 에러 핸들링 코드들은 테스팅 하는 데에 공수가 많이 든다.
하나하나 일일히 에러 코드들을 띄워보는게 오래걸리기 때문이다.
따라서 테스트 코드가 절실해졌다.
2. 테스트 코드 라이브러리
-> 1에서 겪은 문제와 더불어 폼의 유효성 검증을 하는 것도
일일히 테스트 해보는 게 굉장히 오래걸렸다.
잘 작성된 테스트 코드가 있으면 좋을 것 같다는 생각이 들었음...
선택지가 많아서 고민이 되었는데 cypress / vitest / jest 정도가 떠올랐다.
다만 역시 처음은 클래식이지 않을까해서 jest를 사용하는 식으로 할 것 같다.
앞의 두 라이브러리에 비해 사용자 / 역사가 길다보니
레퍼런스를 찾아보는 것도 쉬웠기 때문이다.
yarn berry를 몸비틀어가며 써본 것에서 얻은 교훈은
레퍼런스, 생태계가 풍부한지 아닌지가 정말 중요하다는 것이었다.
공식문서를 한줄한줄 읽어나가면서 여러가지 시도를 해보다보면
물론 문제를 해결할 수는 있겠지만 시간가성비가 처참하다
실제 현업에서 주로 사용할 것이라 예상되는 테스트 라이브러리가 jest인것도 한몫했지만
이건.. 뭐.. 대부분 그렇지 않을까?하는 내 뇌피셜이긴하다.
따라서 jest를 선택했고 환경세팅까지 마쳐두었다.
환경 세팅에 대한 글은 조만간 업로드 될 예정이다.
코드스테이츠를 들으면서 코드스테이츠 과제의 테스트 코드를 모두 작성하신 크루분이
DOM을 다루는 테스트 코드를 올바르게 작성하는게 상당히 까다로운 작업이라고 말씀하셨었는데
좀 무섭긴하다 그래도 해보다보면 또 되지않을까?
3. CSS적인 고민
프로젝트를 구성하다보면 흔하게 사용되는 UI/UX들이 있다.
토스트 알림이 온다든지 아코디언 기능, 다이얼로그기능 , DnD 기능 등등등등등
수많은 기능들이 있는데 이것들이 완성도 있게 만들어서 사용하기에는 품이 상당히 많이 든다.
멘토님의 말씀에 따르면 하려면 할 수는 있지만..
좋은 퀄리티로 빠른 시간안에 만들기는 쉽지 않다고 하시는데 나도 적게나마 UI들을 직접 구성해본 결과
전적으로 그 말에 동의한다.
따라서 약간의 러닝커브가 있더라도 radix, mui 와 같은 라이브러리들을 학습할 예정이다.
tailwindcss를 이용하면 빌드타임에 모든 css를 완성해둘 수 있어서 좋은 점도 있었지만
ui 요구사항이 복잡하고 세밀해질수록 css-in-js의 유연성이 필요하다고 느껴지는 것 같다.
4. react - query
기본적인 유즈케이스나 커스텀훅으로 리액트쿼리 로직을 추출하는 건 무리없이 하고있다.
하지만 하면 할수록 어려운 유즈케이스들을 만나게 되는 것 같다.
리액트쿼리가 지원해주는 기능들인 경우가 대부분이어서
단순히 라이브러리를 찾아보면 해결되는 문제들이 많지만
그마저도 어려울 정도로 유즈케이스들이 복잡하고 또 추상화 너머의 원리를 보려고하면 어려운것같다.
5. 리팩터링 / 클린코드
요즘 관심있게 읽고있는 책이다.
내가 고민하던 부분들을 풀어주는 책이어서 아주 즐겁게 보고있다.
특히 테스트코드에 관해서는 큰 영감을 받았다.
사실 나는 테스트코드를 작성할 시간에 그냥 코드를 치는게 더 생산성이 높지 않냐?
하는 주의였는데 막상 내가 테스트에 시간을 다 빼앗기는 것을 경험해보니
빠르게 가는 방법은 올바르게 가는 것 뿐이다.라는 말이 참 와닿는다.
6. nestjs
겉핥기로나마 객체지향이 추구하는 바는 이해하고 있다고 생각한다.
그것을 코드로 옮기는 것을 해보고 싶기도 하고
백엔드 프레임워크를 다루고 싶다는 생각도 있는데
마침 nestjs가 적절해보였다.
자바의 경우에는 아예 언어를 새로 시작해야하는 부담감이 있는데
nestjs는 타입스크립트 기반으로 동작하기 때문이다.
그런데.. 내가 알던 타입스크립트와 nest에서 사용하는 타입스크립트는 좀.. 다르네..?
그래도 공부하다보면 나아질거라고 생각한다.
이외에도.. 네트워크 , 객체지향 등등등 공부하고 싶은게 너무 많은데 시간이 참 한정되어있다
잠을 줄일 수 밖에 없을듯
'간헐적 회고' 카테고리의 다른 글
아주 간만에 돌아온 간헐적 회고 (1) | 2023.09.03 |
---|---|
7월 31일의 간헐적 회고 (0) | 2023.07.31 |
간헐적 회고.. 가보자고.. (1) | 2023.07.12 |
5~6월 회고해보기 (4) | 2023.07.03 |
간헐적회고... 가보자고.. (0) | 2023.05.07 |