jh.nrtv

간단 회고 - 데이터의 종류를 다시 한 번 생각하며 핸들링하자! 본문

Error

간단 회고 - 데이터의 종류를 다시 한 번 생각하며 핸들링하자!

wlgus3 2024. 8. 12. 08:18

 

 

서비스를 개선하는 작업에서 '관세/ 소비세'를 도입하는 작업을 진행했다.

 

결제에 전에 없던 요소가 생긴 것이기 때문에 

서비스 내 판매가 일어난 데이터를 보여주는 결제 상세 화면이 수정이 필요했다. 

당연히 가격을 다루는 여러 데이터를 계산해서 보여주는 로직도 함께 변경됐다.

 

 

프론트 어드민에서는 코드 특성 상 데이터를 가공해서 화면에 표시하는 경우가 많다.

이번에도 당연히 그런 줄 알고 데이터를 임의로 계산 및 가공해서 화면에 표시했다.

 

 

그런데 그 결과로 계산이 잘못되어 이상한 결제가격이 화면에 보이는 오류가 확인됐다. ㅠㅠ

 

 

이에 오류에 대해서 회의 중에 잠깐 논하는 과정이 있었는데 

 

시니어 개발자분께 

'데이터를 임의 로 조작하는 것을 조심하라'는 피드백을 받았다.

 

 

서버에서 보내준 값은 정확했으나 프론트에서 가공하는 과정에서 오차가 발생하는 것은 매우 심각한 오류이다. 

백엔드 개발자들이 비즈니스 로직에 의해 오차를 막으려 노력했던 모든 것들이 프론트 단에서 전부 무효화 될 수도 있기 때문이다

 

 

 프론트엔드에서는 서버로부터 응답을 받아 정말 여러 종류의 데이터를 생성하고 다루는데, 그러다보면 작업에 몰두해서 과감한 데이터 가공 및 변경을 하게된다 ㅠㅠ.

그것들이 각각 어떤 종류의 데이터인지 항상 생각하며 코드를 짜는 것이 중요하다는 것을 여러 이슈에서 자주 느낀다.

특히나 프론트엔드와 백엔드 모두를 경험한 시니어분들과의 대화에서 이러한 내용이 자주 나오는 것 같다.

 

 

현실적으로 프론트단에서 데이터 가공이 일어나지 않을 수는 없다. 모든 데이터를 그대로 보여줄 수 있도록 가공을 완료하고 프론트로 보내주기에는 서버 개발자의 공수도 너무 많이 들고, 서버 부하에도 좋지 못할 것이다. 

 

 

 

 

 프론트엔드 개발자가 데이터를 받아서 다룰 때에 그 데이터의 속성을 한 번 더 생각하고 코드를 작성하는 것이 중요하다는 것을 다시금 느끼게 되었다.

특히 데이터를 가공하기 전에 바로 사용할 수 있는 데이터를 서버에서 보내줬는지 확인하는 것이 반드시 필요하다. ( 특히나 depth가 깊은 응답의 경우! )