리액트에서 key에 index를 넣으면 성능 저하가 발생할 수 있으므로 사용하지 않는 것이 좋다고 합니다. 즉석에서 값을 생성해 부여하는 것 역시 안 된다고 하네요. index가 안 되는 건 그렇다 하더라도, 즉석에서 값을 생성하는 것은 왜 안 되는 걸까요? 애초에 key 프로퍼티의 역할은 무엇일까요? 단순히 해결법만 알아 보고 끝내는 것이 아닌, 어떤 리액트 동작 원리에 따라, 무슨 이유로 key에 index를 넣으면 안 되는지, 이를 더 자세히 알아보고자 합니다.
흔히 ‘개발을 한다’고 하면 코드를 작성하는 일을 떠올립니다. 그러나 개발자로 일하다 보면 코드를 작성하는 시간보다 이미 작성된 코드를 읽는 시간이 훨씬 더 많다는 걸 깨닫게 됩니다. 요즘 실력 있는 개발자의 역량 중 하나는 ‘코드를 얼마나 이해하기 쉽게 만드는가’에 있습니다. 특히 여러 팀과 협업하거나, 규모가 큰 프로젝트를 진행할 땐 이러한 역량이 더욱 중요해집니다. 이번 글에서는 선언형 프로그래밍을 통해 리액트에서 이해하기 쉬운 코드를 작성하는 방법에 대해 살펴보겠습니다.
프론트엔드 성능은 사용자 경험과 웹사이트의 성공에 매우 중요한 역할을 합니다. 이는 사용자가 웹사이트를 방문했을 때 페이지가 로드되는 속도나 반응성, 사용자의 인터랙션(interaction) 등을 말합니다. 웹사이트의 성능은 다양한 요소들에 의해 결정되는데요. 예를 들어, 빠른 로딩 속도는 웹사이트의 서비스에 필요한 파일 크기와 개수, 웹사이트의 응답 속도, 네트워크 연결 상태 등에 영향을 받습니다. 이와 같이 성능을 판단하는 요소들을 성능 지표라고 부를 수 있습니다. 이번 글에서는 웹사이트 성능 지표를 판단할 수 있는 구글의 ‘Core Web Vitals’에 대해 살펴보겠습니다.
PWA란 프로그레시브 웹 앱(Progressive Web Apps)의 줄임말로, 모바일 기기에서 네이티브 앱(Native App)과 같은 사용자 경험을 제공하는 웹 앱입니다. 이는 기존의 전통적인 웹 앱과는 달리 네이티브 앱과 유사한 기능을 제공할 수 있다는 것이 가장 큰 특징입니다. PWA를 사용하면 사용자가 앱을 다운로드하거나, 업데이트할 필요 없이 웹 브라우저를 통해 앱을 바로 사용할 수 있습니다. 이번 글에서는 프론트엔드 개발자가 PWA를 알아야 하는 이유에 대해 살펴보겠습니다.