2013-07-21 2 views
2

나는 MvvmCross 3.09에서 새로운 RIO 지원을 소개하는 the N=36 tutorial을보고 있습니다. 동일한 반에 INC 필드와 구 학교 속성을 결합하는 것이 안전합니까? 내 재산 세터와 getter 중 일부는 복잡하므로 남겨 두는 것이 더 쉬울 수도 있으므로 부탁드립니다. 그러나 기존 속성의 대다수는 단순하며 현장에서 우수한 후보로 보입니다.RIO 필드와 속성을 결합하는 것이 안전합니까?

감사 마크

답변

2

'안전'은 여기에 사용할 수있는 흥미로운 단어입니다 - 내가이 상황에서 무엇을 의미하는지 전혀 모르겠어요. 결과로 강타INotifyChanged의 메모리와 처리 속도 성능을 가야 아무것도 없다 -

나는 개인적으로 혼합하고 같은 프로젝트에서와 동일한 뷰 모델의 일치 INotifyChangedINotifyPropertyChanged하는 안전 믿는다 INotifyPropertyChanged의 성능 이상이어야합니다. 내가 생각할 수있는 안전하지 않은 위험

유일한 잠재적 인 분야는 다음과 같습니다

  • 팀 개발 나중에 코드 유지 관리 - 중 지금 또는 나중에 자신 또는 다른 코더를 혼동 수도 함께 두 개의 서로 다른 접근 방식을 사용하여 유지 보수 - 그들이 "하나의 접근법 또는 다른 접근법을 어디에서 사용합니까?"라고 묻는 것은 공정 할 것입니다. 그리고 왜?" 의

  • 지원이 부족하다 '모든 변경'- INotifyPropertyChanged은 ViewModels가 모든 알림을 변경 보낼 수 있습니다 - 그들이 null 또는 빈 속성 이름을 사용하여이 작업을 수행 할 수 있습니다. INotifyChanged은 (는) 현재이 알림에 참여하지 않습니다. 내 경험에 의하면,이 '모든 변경'메커니즘은 매우 드물게 사용되며 Mvvm 개발자가 잘 알지 못하므로 위험이 적습니다. 그러나 누구나 사용하려고 시도하면 INotifyChanged 바운드 필드가 업데이트되지 않았다는 사실에 놀랄 수도 있습니다.

  • 다른 Mvvm 라이브러리로의 이식성 - Rio는 MvvmCross가 도입 한 바인딩 메커니즘이므로 다른 Mvvm 플랫폼에서는 아직 사용할 수 없습니다. 다시 프리즘 같은 것으로 포트에 이제까지 인 경우는 Windows 개발자들에게 혼란

  • (당신이 그 속성으로 필드를 재 작성해야 할 수도 있습니다)에 대해 다음이 위험이 될 수 있습니다 - XAML 개발자가 모든 INotifyPropertyChanged를 사용하는 데 사용 된 경험 2005 년으로 돌아 가면 Xaml 내부의 필드 바인딩을 위해 MvvmCross Xaml Binding Extensions을 사용해야하는 것을 혼란스럽게합니다. (이 혼란이 당신의 세계관에 달려 있느냐 없느냐에 따라이 혼란이 좋든 그렇지 않든간에!)

+0

비디오의 저자는 대답했다? :) – vikingmaster

+0

@jari - Stuart의 지원은 MvvmCross가 대단한 이유입니다! – MarkAArnold

관련 문제