책 후기 유튜브 영상을 통해 단위테스트라는 책을 추천받아서 읽었는데 느낀점과 정리한 내용을 간략히 공유해보겠습니다. 느낀점 integration testing vs unit testing 과거에 프런트엔드 테스팅(엄밀히 말하자면 redux testing)에 관한 아티클을 읽었는데 integration testing으로 점점 더 옮겨가는 추세라는 내용의 article이었습니다. 하지만 지금 생각으로는 복잡하지 않은 어플리케이션에서는 integration testing으로 충분히 가능하지만 복잡한 SaaS 프러덕트의 경우는 integration testing으로는 힘들다고 결론을 내렸습니다. 복잡한 비지니스 로직을 integration testing으로 커버하기에는 한계점이 있습니다. integration ..
전체 글
개발자로서 성장하기 위해 배운 지식, 트렌드와 경험을 글로 남기고 이를 공유합니다.안녕하세요. 이번 포스팅에서는 실무에서 겪었던 렌더링 성능 이슈와 어떠한 과정을 거쳐서 해결했는지 공유해보도록 하겠습니다.Issue문제가 된 이슈에 대해 간략히 설명해보겠습니다. 여러 개의 text를 선택해 tts 요청을 보내고 response가 왔을때 성공했다는 UI를 그리게 위해 state를 업데이트하는 상황입니다. 그러나 여러 개의 text를 가지고 있는 컴포넌트들의 숫자가 굉장히 많아질 경우 리렌더링이 여러번 발생하기 때문에 토스트를 띄운다거나 할때 토스트 애니메이션이 버벅이는 jank 현상이 있었습니다.Chrome devtools performance tab먼저 큰 그림에서 어떤 부분이 문제인지를 파악하기 위해 chrome devtools에서 performance tab을 활용했습니다.아래 이미..
Keep button design system을 구성하여 앞으로 피처 개발에 있어 생산성이 향상될 것이다. 레거시 코드를 계속해서 처리해 나가는 점을 잘했다. 앞에서 언급한 변경점에 대해 문서화하여 팀원들에게 공유한 점 잘했다. Problem Try 다른 컴포넌트에 대한 design system을 구성해 legacy 코드를 계속 쳐내어 팀의 생산성을 끌어올리자. 슬랙을 통해 더더욱 공유하는 습관을 만들자.
회고 방법은 개발자의 공유 문화 이모저모 (2) 회고 문화를 참고하여 KPT (Keep, Problem, Try)양식을 사용했습니다. Keep (이번 스프린트에서 만족했고 지속하고 싶은 점) 함수형 프로그래밍을 계속해서 적용하려고 노력한 부분은 잘한 점인 것 같다. Problem (이번 스프린트에서 아쉬웠던 점) 비지니스 로직은 잘 분리를 했지만 유닛 테스트를 만족할 만큼 작성하지 못한게 아쉽다. 개발한 기능에 대해 테스트를 꼼꼼히 하지 못했다. Try (다음 스프린트에 시도해볼 점) 비지니스 로직을 작성할때 유닛테스트라는 모자를 항상 옆에 둬보자. 마치 한 몸인 것 처럼 로직을 써야할때 테스트를 쓸가? 라는 고민이 자동으로 튀어나오도록 해봐야겠다. 기능 개발을 완료한 후 시간을 투자해서 다양한 케이스에..