나는 MvvmCross 3.09에서 새로운 RIO 지원을 소개하는 the N=36 tutorial을보고 있습니다. 동일한 반에 INC
필드와 구 학교 속성을 결합하는 것이 안전합니까? 내 재산 세터와 getter 중 일부는 복잡하므로 남겨 두는 것이 더 쉬울 수도 있으므로 부탁드립니다. 그러나 기존 속성의 대다수는 단순하며 현장에서 우수한 후보로 보입니다.RIO 필드와 속성을 결합하는 것이 안전합니까?
감사 마크
나는 MvvmCross 3.09에서 새로운 RIO 지원을 소개하는 the N=36 tutorial을보고 있습니다. 동일한 반에 INC
필드와 구 학교 속성을 결합하는 것이 안전합니까? 내 재산 세터와 getter 중 일부는 복잡하므로 남겨 두는 것이 더 쉬울 수도 있으므로 부탁드립니다. 그러나 기존 속성의 대다수는 단순하며 현장에서 우수한 후보로 보입니다.RIO 필드와 속성을 결합하는 것이 안전합니까?
감사 마크
'안전'은 여기에 사용할 수있는 흥미로운 단어입니다 - 내가이 상황에서 무엇을 의미하는지 전혀 모르겠어요. 결과로 강타 및 INotifyChanged
의 메모리와 처리 속도 성능을 가야 아무것도 없다 -
나는 개인적으로 혼합하고 같은 프로젝트에서와 동일한 뷰 모델의 일치 INotifyChanged
및 INotifyPropertyChanged
하는 안전 믿는다 INotifyPropertyChanged
의 성능 이상이어야합니다. 내가 생각할 수있는 안전하지 않은 위험
유일한 잠재적 인 분야는 다음과 같습니다
팀 개발 나중에 코드 유지 관리 - 중 지금 또는 나중에 자신 또는 다른 코더를 혼동 수도 함께 두 개의 서로 다른 접근 방식을 사용하여 유지 보수 - 그들이 "하나의 접근법 또는 다른 접근법을 어디에서 사용합니까?"라고 묻는 것은 공정 할 것입니다. 그리고 왜?" 의
지원이 부족하다 '모든 변경'- INotifyPropertyChanged
은 ViewModels가 모든 알림을 변경 보낼 수 있습니다 - 그들이 null
또는 빈 속성 이름을 사용하여이 작업을 수행 할 수 있습니다. INotifyChanged
은 (는) 현재이 알림에 참여하지 않습니다. 내 경험에 의하면,이 '모든 변경'메커니즘은 매우 드물게 사용되며 Mvvm 개발자가 잘 알지 못하므로 위험이 적습니다. 그러나 누구나 사용하려고 시도하면 INotifyChanged
바운드 필드가 업데이트되지 않았다는 사실에 놀랄 수도 있습니다.
다른 Mvvm 라이브러리로의 이식성 - Rio는 MvvmCross가 도입 한 바인딩 메커니즘이므로 다른 Mvvm 플랫폼에서는 아직 사용할 수 없습니다. 다시 프리즘 같은 것으로 포트에 이제까지 인 경우는 Windows 개발자들에게 혼란
(당신이 그 속성으로 필드를 재 작성해야 할 수도 있습니다)에 대해 다음이 위험이 될 수 있습니다 - XAML 개발자가 모든 INotifyPropertyChanged
를 사용하는 데 사용 된 경험 2005 년으로 돌아 가면 Xaml 내부의 필드 바인딩을 위해 MvvmCross Xaml Binding Extensions을 사용해야하는 것을 혼란스럽게합니다. (이 혼란이 당신의 세계관에 달려 있느냐 없느냐에 따라이 혼란이 좋든 그렇지 않든간에!)
비디오의 저자는 대답했다? :) – vikingmaster
@jari - Stuart의 지원은 MvvmCross가 대단한 이유입니다! – MarkAArnold