우리 팀은 웹 기반 금융 응용 프로그램을 개발 중이며 동료와 함께 계산을 유지해야 할 부분이 있습니다.
간단한 설명 : 프론트 엔드에는 Java (ZK, Spring)를 사용하고 백엔드에는 Progress 4gl을 사용합니다. 데이터베이스의 일부 하드 코어 수학 및 데이터와 관련된 계산은 백엔드로 유지되므로 이에 대해 이야기하지 않습니다. 사용자가 X 값을 입력 한 다음 Y 값에 추가되고 (화면에 표시됨) 결과가 Z 필드에 표시됩니다. 순수하고 간단한 jQuery-ish 작업입니다.
가장 좋은 방법은 다음과 같습니다.
1) 백엔드로 돌아가는 것을 막는 자바 스크립트를 사용하여 값을 추가 한 후 "저장시"백엔드에서 값을 검증합니까?
2) 모든 비즈니스 로직을 동일한 위치에 유지하십시오. 따라서 값을 백엔드로 가져 와서 계산합니까?
3) 프런트 엔드에서 계산을 수행하십시오. 그런 다음 백엔드로 데이터를 보내고 거기에서 유효성을 검사하고 계산을 다시 수행하며 결과가 유효하고 동일한 경우에만 사용자에게 표시합니까?
4) 다른 것?
참고 : Java에서는 기본 유효성 검사를 수행하지만 대부분 다른 비즈니스 로직과 마찬가지로 대부분 백엔드에 있습니다.
백엔드의 모든 항목을 다시 계산하여 전송되는 데이터의 증가는 문제가되지 않습니다 (소규모 XML 크기; 서버 및 대역폭은 사용자가 수행 한 증가 된 작업량을 견딜 수 있음).