2

관찰자 패턴과 함께 MVC를 사용하면 컨트롤러에서 폴링을 수행하고 결과가 모델에서 전달되거나 모델에 요청이 전송되어야하는 경우 사용자 작업으로 데이터 (예 : 카메라)를 폴링해야합니다. 모델 자체가 폴링을 수행합니다.MVC에서 자율 주변 장치와의 상호 작용이 모델 또는 컨트롤러에 속합니까?

이 질문은 내가 읽고있는 모든 것을 조화시키려는 나의 시도이다. 모델은 그것을 얻지 못하는 데이터에만 작용해야한다는 내 직감으로 "마른 컨트롤러"를 추천한다.

(참고 :이 질문은 일 수도 있고 일 수도 있습니다.이 질문에 대한 답변이 하나만있는 것은 아닙니다. 그렇지 않은 경우 의견을 듣고 자 할 때 다시 생각해보십시오.)

답변

1

컨트롤러에 속합니다. 모델에는 정보 및 비즈니스 규칙이 포함되어 있으며 컨트롤러는 본질적으로 사용자, 정보 또는 비즈니스 규칙이 아닌 모든 것에 대한 인터페이스이며 뷰는 사용자 상호 작용을 처리합니다.

카메라 모델과 드라이버는 사용자가 결정할 수 있으므로 해당 영역 아래로 떨어질 수 있습니다.

그러나 모델에 주변기기 인터페이스가 필요하지는 않습니다.

-Adam

1

컨트롤러가 폴링을 수행해야합니다. 모델은 내 마음 속에있는 상태의 스냅 샷이므로 카메라 상태가 컨트롤러에서 모델로 전달되어야합니다.

1
당신이 컨트롤러 아래 모델보다 얇은 서비스 레이어를 추가 할 수

이 한 곳

을에서 주변 코드에 대한 모든 액세스를 넣을 수 있습니다
관련 문제