관찰자와 콜백의 큰 차이점은 무엇입니까? 어떤 것을 언제 어디에서 사용할 수 있습니까?관찰자와 콜백의 큰 차이점은 무엇입니까?
7
A
답변
11
걱정거리가 있습니다.
옵저버를 사용하면 실제로 모델에 속하지 않은 코드를 제외시킬 수 있습니다. 예를 들어, User
모델은 사용자 레코드가 저장된 후에 등록 확인 전자 메일을 보내는 콜백을 가질 수 있지만이 코드는 모델의 용도와 직접 관련이 없으므로 모델에 실제로 원하지 않습니다.
옵저버를 사용하면 모델에 모든 콜백 코드가 없기 때문에 옵저버를 사용하여 명확하게 분리 할 수 있습니다. 옵저버는 모델 (또는 모델)에 의존합니다.
0
저도 마찬가지입니다. 그러나 Observer 대신 콜백을 선호합니다.
옵저버는 콜백이지만 별도 모델입니다.
콜백 모델에 있습니다. 콜백이 있다는 것을 알기 때문에 해킹 할 수 있습니다.
0
나는 모델을 합리적으로 가늘게 유지하는 것이 중요합니다. 따라서 모델이 길어지면 오히려 관찰자를 사용하도록 리팩터링 할 때가 있습니다.
엄밀히 말해 건축가 POW (John의 답변에 나와 있듯이)는 separation of responsibilities입니다. 그러나 단순한 것이라면 어쨌든 모델에 붙여 두는 것을 선호합니다.
기술적으로 차이가 없습니다.
관련 문제
- 1. 클로저와 콜백의 차이점은 무엇입니까?
- 2. IQueryable과 큰 차이점은 무엇입니까?
- 3. SQL에서 큰 따옴표와 큰 따옴표의 차이점은 무엇입니까?
- 4. Ajax 콜백의 반환 값은 무엇입니까?
- 5. RMI 콜백의 진정한 이점은 무엇입니까?
- 6. jQuery 지연 콜백의 인수는 무엇입니까?
- 7. fopen과 curl의 가장 큰 차이점은 무엇입니까?
- 8. freeglut과 glut의 가장 큰 차이점은 무엇입니까
- 9. ASP.net 학습 - 2.0에서 3.5까지의 큰 차이점은 무엇입니까?
- 10. 관찰자와 실내 장식은 c를 함께 사용 ++ * REVISED *
- 11. IntelliJ + Ruby Plugin 대 RubyMine의 큰 차이점은 무엇입니까?
- 12. JavaScript에서 큰 따옴표 ("")와없는 속성 이름의 차이점은 무엇입니까?
- 13. 작은 메모리 모델과 큰 메모리 모델의 차이점은 무엇입니까?
- 14. Javascript 콜백의 범위 지정 문제
- 15. onClick과 mouseClick의 차이점은 무엇입니까?
- 16. FlockDB와 neo4j의 차이점은 무엇입니까?
- 17. 콜백의 javascript 함수에서 ComponentArt CallBackEventArgs를 명시 적으로 전달하는 방법은 무엇입니까?
- 18. setInterval과 Polling의 차이점은 무엇입니까?
- 19. 스트리트 뷰 API 콜백의 JS 클로저
- 20. Task.Factory.FromAsync와 BeginX/EndX의 차이점은 무엇입니까?
- 21. 게시/서브 모델에서 이벤트 콜백의 스칼라 초기화
- 22. Doctrine1과 Doctrine2의 차이점은 무엇입니까?
- 23. MySql의 utf8_general_ci와 utf8_unicode_ci의 차이점은 무엇입니까?
- 24. signcode.exe와 signtool.exe의 주요 차이점은 무엇입니까?
- 25. Ruby에서 포함과 확장의 차이점은 무엇입니까?
- 26. 인터럽트와 예외 상황의 차이점은 무엇입니까?
- 27. XML-RPC와 SOAP의 차이점은 무엇입니까?
- 28. KERN_INVALID_ADDRESS과 KERN_PROTECTION_FAILURE의 차이점은 무엇입니까?
- 29. ZRSSfeed에서 성공 콜백의 해결 방법 부족?
- 30. ajax 콜백의 반환 데이터를 기반으로 폼로드를 중지하십시오.