클라이언트 하드코딩 어디까지?

강우엉·2023년 9월 9일
0

study

목록 보기
2/44

코디추천 서비스 프로젝트를 하면서 의문점이 생겼다.

해당 사진처럼 어떤 코디를 추천받을지 필터링하는 과정에 값을 넣는 방법은 크게 2가지로 분류될것이다.

  • 클라이언트에 하드코딩 해놓기
  • 백엔드에서 값 내려주기

백엔드 개발을 하는 입장으로써 어디까지 값을 내려주고 어디까지 하드코딩을 해놓아도 될까? 라는 고민이 생겼다.

처음에는 마냥 변경사항이 생긴다면 백엔드에서 내려줘야하지 않을까라는 생각이었지만 생각해보면 단순한 변경사항으로는 클라이언트측에서도 코드를 쉽게 변경할 수 있다.

여기서 중점은 내가 개발하는 백엔드의 클라이언트가 웹이냐 모바일이냐에 따라 달라진다.

  • 웹 개발을 하고 배포까지 해 본 개발자들은 알다시피 웹은 프론트도 우리가 원할때 언제든지 배포가 가능하다는 특징이 있다.

모바일

  • 모바일에서는 프론트를 배포하고싶으면 배포를해도 안드로이드랑 IOS에서 심사를 진행한다. 따라서 우리가 원할때 언제든지 배포가 가능한 시스템이 아니라는것이다.

  • 배포를 한다하더라도 앱에 새로운 버전이 나올때마다 업데이트하는 사용자가 얼마나 될까? 대부분의 사용자는 버전 업데이트를 바로바로 하지 않는다는 점을 기억해야한다.

  • 위에 프로젝트를 예시로 들면 과거 버전에 스타일이 미니멀하고 이지캐주얼밖에 없는데 서비스가 커져서 새로운 버전에 다른 여러 스타일을 추가했다고 가정해보자. 사용자들이 업데이트를 하지않으면 여전히 미니멀하고 이지캐주얼밖에 사용을 못할것이다.

해결방법

  • 만약 개발하는 클라이언트가 웹이라면 모든 정보를 클라이언트측에서 하드코딩 해도 상관없다.

  • 하지만 모바일이라면 새로운 버전에서 추가되는 등 업데이트가 될 값들은 백엔드에서 내려주고 나머지는 하드코딩 하는 방법을 추천한다.

profile
우엉이의 코딩 성장일기💻

0개의 댓글