2012-02-14 5 views
0

Windows Phone에서 IsolatedStorageSettings.ApplicationSettings에 대한 래퍼를 작성 중입니다 ...저장소가 기본 인스턴스를 처리해야합니까?

이 문제의 원인 중 하나는 if (x == null) 코드의 양을 줄이는 것입니다. 내가 자신의 용도로 수집 한 것에서는 저장소에서 엔티티를 요청하면 저장소에 엔티티가 없으면 어쨌든 기본 인스턴스를 생성 할 것입니다.

궁금한 점은 엔티티가 발견되지 않으면 엔티티의 기본 인스턴스를 반환하는 것이 좋지 않겠습니까? 그렇다면 어떻게해야합니까?

사용자가 기본 인스턴스를 전달하도록 허용해야합니까? 어쩌면 공장?

생각하십니까?

답변

2

아니요. 기본 인스턴스가없는 경우 기본 인스턴스를 만들어서는 안됩니다. 적어도 Get 방법에는 해당되지 않습니다.

엔티티 생성과 관련하여 필자는 필자의 저장소 (필수 정보에 해당하는 인수 포함)에 항상 Create 메서드를 포함합니다. 그 이유의

하나는 해결되지 않습니다에 대한

저장소를 천지 경우 (X == NULL) 코드의 양을 줄일 것입니다. 리포지토리는 데이터 소스를 추상화하는 방법 일뿐입니다. 다른 논리를 포함해서는 안됩니다 (단일 책임 원칙).

리포지토리와 모든 사용법 사이에 레이어 (클래스)를 추가하여 한 곳에서 null 체크를 얻을 수 있습니다.

+0

여기에 좋은 정보가 많이 있습니다. – deanvmc

관련 문제