개인적으로 개발을 하다가 최근 회사에 들어와서 개발을 하다보니 제가 처리하는 방식과 좀 다른부분이 있어 궁금해졌는데요~! (회사에선 mybatis를 사용하고 있습니다.)
비즈니스 로직을 스프링 서비스단에서 처리하는게 맞는지, 클라이언트 스크립트단에서 처리하는게 맞는지 두개의 장단점이 어떤게 있나 의견 들어보고 싶습니다 ㅠㅠㅎ
예를 들어 DB에서 `A = 10`, `B = 20`이라는 값을 들고 온 후, `A`와 `B` 그리고 두 변수를 더한 `C = 30` 이라는 3개의 값을 클라이언트 화면에 표시하고 싶을경우입니다.
저 같은경우엔 스프링 서비스단에서 불러온 후, 서비스단에서 A와 B를 더해 C변수를 만들고, A,B,C 변수를 return 시켜 자바스크립트단에서는 해당 데이터를 받아오기만 해서 화면에 표시를 하는 방법을 선호했습니다.
근데 회사에서는 서비스 단에서 A와 B를 받아와 반환하고 스크립트 단에서 A와 B를 더해주는 작업을 하여 C값을 만들어 화면에 표시를 하는 방식을 사용하고 있습니다.
예시는 굉장히 간단하지만.. ㅠㅠ ERP시스템이다보니 데이터 양도 많고, 회계를 위한 계산식도 있습니다.
그리고 실제로 회사의 모든 소스 코드가 스프링 서비스단에서 단순히 마이바티스를 통해 DB 조회를 하고, 그 모델 리스트를 리턴해주는게 끝입니다. 스크립트 단에서 그걸 이래저래 요리하고 있었구요.
어느정도 서비스, 클라이언트 단에서 서로 필요한 부분을 나눠서 처리하는게 좋긴하지만, 회사 시스템은 아예 클라이언트단에서 모든걸 처리하고 있어서 좀 굉장히 놀랐습니다.
제가 알기론 클라이언트단에서 로직을 처리할 경우, 사용자의 컴퓨터에 영향을 많이 받아서 성능면에서나 처리면에서나 굉장히 안좋다고 알고 있는데..
저런경우 어떤 장단점이 있는지, 어떤식으로 분배를 해야할지 궁금합니다.
이부분에 대해 굉장히 궁금해 했는데 속시원하게 답변 받고싶습니다 ㅠㅠㅎㅎ