최근 트랜잭션 로그에서 폴링을 계산할 때마다 잔액을 계산하는 대신 계정 상태 모델로 계산하는 계정 도메인 모델의 예를 보았습니다. 이것은 아주 좋습니다. 그러나 불변성의 핵심입니다. (여기에 대답을 표시 할 수는 없으므로 여기에 답을 달아주세요.)불변의 것이 제조 데이터를 저장하는 것보다 논쟁의 여지가 있습니까?
1
A
답변
3
당신이 묘사 한 것은 시스템을 작성하는 강력한 기술입니다. 시스템이 데이터를 잃어 버리지 않는다는 것을 거의 보장합니다. 프로그래밍 오류로 인해 데이터가 손상되지 않습니다. 버그가 수정되면 시스템은 버그가 발생했을 때 추가 된 레코드에 대해서도 정확한 결과를 반환합니다. 한 가지 유용한 기술 ("람다 아키텍처"와 밀접한 관련이 있음)는이 계산을 주어진 정보 조각의 "표준"형태로 취급하지만 효율성을 위해 그 위에 캐시를 제공합니다. 데이터베이스 디자인 비교 특정 쿼리의 성능을 향상시키기 위해 데이터베이스가 비정규 화됩니다.
그러나 불변의 데이터가있는 시스템을 작성하는 유일한 방법은 아닙니다. 예를 들어 업데이트가 접수되면 이전 버전을 가리키는 이력과 함께 전체 계정의 변경 불가능한 인스턴스를 저장하여 업데이트를 적용 할 수 있습니다 (두 사람이 동시에 변경 한 경우 사용자가 다른 "지점"을 조정해야 할 수도 있음) git과 같은 VCS 사용과 비교). 이는 특정 시점에서 계정이 어떻게 보 였는지 정확하게 유지하는 것이 중요하고 한 버전에서 다른 버전으로의 변경 사항을 보존하는 것이 덜 중요한 시스템에 더 적합 할 수 있습니다 (예를 들어 한 번 보험 계약 처리).
"불변의 핵심입니까?" 의미없는 질문입니다. "핵심"을 검색하는 대신 코드를 더 명확하고 유지 보수 할 수있는 실용적인 기법을 찾아 보는 것이 좋습니다.
관련 문제
- 1. 방파제 전쟁에 대한 논쟁의 여지가 없습니다.
- 2. 메모리에 데이터를 저장하는 것이 좋습니다.
- 3. XML로 데이터를 저장하는 것이 안전합니까?
- 4. 페이지를 언로드하는 것보다 먼저 필요한 것이 있습니까?
- 5. 네트워크 드라이브를 사용하는 것보다 로컬 드라이브에 처음으로 저장하는 것이 더
- 6. 표시기를 TempData에 저장하는 것보다 EditorForModel/DisplayForModel을로드하는 것이 더 나은 방법입니까?
- 7. JSON 데이터를 데이터베이스에 저장하는 것이 얼마나 위험합니까?
- 8. 플래시에서 데이터를 저장하는 것이 가장 좋습니다.
- 9. UserDefaults에 사용자 정의 데이터를 저장하는 것이 좋습니다.
- 10. 레일 : "세션"에 데이터를 저장하는 것이 안전합니까?
- 11. 파이썬 모듈로 데이터를 저장하는 것이 합리적입니까?
- 12. 모든 컨트롤을 저장하는 것보다 한 컨트롤의 값을 데이터베이스에 저장하는 것이 더 좋습니까?
- 13. jqGrid에서 어쨌든 하나의 속성/열을 저장하는 것보다 다른 값을 읽는 것이 있습니까?
- 14. 불변의 차용으로도 이동할 수 있습니까?
- 15. "JSON.stringify"데이터를 SharedPreferences에 저장하는 것이 좋지 않습니까?
- 16. 중요한 데이터를 HttpSession에 저장하는 것이 안전합니까?
- 17. Express.js에서 데이터를 세션에 저장하는 것이 안전합니까?
- 18. 함수 내부에서 $ _SESSION에 데이터를 저장하는 것이 좋습니다.
- 19. memcached를 사용하여 세션 데이터를 저장하는 것이 안전합니까?
- 20. 배열이나 객체에 데이터를 저장하는 것이 더 효율적입니까?
- 21. mysql에서 json으로 데이터를 저장하는 것이 좋습니다?
- 22. 클래스 속성에 데이터를 저장하는 것이 좋거나 나쁨
- 23. 운영 데이터를 memcached에 저장하는 것이 좋은 생각입니까?
- 24. 실제로 데이터를 저장하는 것보다 계층 적 데이터의 구조를 정의하는 것
- 25. 데이터를 저장하는 Viewstate가 있습니까?
- 26. 필요한 것보다 모든 것이 표시됩니다.
- 27. 어느 것이 viewstate에 데이터를 저장하는 것이 더 낫습니까?
- 28. 파이썬에는 불변의 목록이 있습니까?
- 29. 불변의 컬렉션입니까?
- 30. 데이터를 여러 행에 저장하는 것이 좋습니까, 아니면 MYSQL에서 하나의 JSON에 저장하는 것이 더 좋습니까?
실용적인 기술을 찾을 수있는 곳을 제안 해 주실 수 있습니까? –