소셜 네트워킹 앱에서 Post
개체를 모델링하고 조합 적 폭발을 피하고 싶습니다. 예를 들어, 나는 슈퍼 상태 published
을 가질 수 있는데, 서브 주소는 commented
, liked
, reported
입니다. 문제는 게시 된 게시물이 commented and liked
, commented and liked and reported
등일 수 있으며 이러한 인공 결합 상태를 만들고 싶지 않다는 것입니다. 그것들을 중첩하는 것은 또한 좋은 해결책이 아니다. 왜냐하면 이들 하부 상태들 사이에 순서 나 계층이 없기 때문에 결국 조합 증가 문제가 생길 것이다. 직교 영역도 해결책으로 보이지 않습니다. 모든 단서?게시 개체 상태 머신
0
A
답변
0
가능한 이벤트를 제한하거나 이벤트에 대해 다른 동작이 필요한 경우가 아니면 상태가 전혀 필요하지 않을 수 있습니다. 게시물에 댓글이나 "좋아요"를 부여하면 게시물에 실제로 할 수있는 모든 사항이 변경됩니까?
일반적으로 복잡성이 폭발하는 직교 상태는 문제 도메인의 내용을보다 정확히 반영해야한다는 것을 나타내며 각 클래스는 자체적 인 별도의 상태 시스템을 필요로합니다.
댓글 (예 : 추가, 수정, 삭제)을위한 상태 기계, '좋아요'(예 : 추가됨, 취소됨, 복원 됨) 등의 상태 시스템이 필요할 수 있습니다.
왜 직교 영역이 해결책으로 보이지 않습니까? 네, 그렇습니다! 가능한 상태와 그 상태가 서로 어떻게 관련되어 있는지 더 자세하게 설명하십시오. – Ister
@ 아이 스터 네, 맞습니다. 그것은 직각 지역을 가진 애완 동물이 좋아합니다 : "직각 지역을 사용하여 자신을 붙잡고 자신을 때 리면";-) 또는 Jim L.이 제안한 것처럼 좀 더 정중하게 말하면 아마도 문제를 다시 생각해보십시오. – user160902