도메인 개체를 사전의 키로 사용하는 것이 좋습니다.사전에서 키로 개체 사용
NHibernate
을 사용하여 내 도메인 개체를 채우는 시나리오가 있습니다.
비즈니스 논리를 수행 할 때 사전을 찾아야합니다. 나는 두 번째 옵션은 내가 쉽게 테스트 케이스를 작성할 수와의 실제 도메인 개체를 사용할 수 있습니다
로 나에게 더 나은 것 같다 의 사용을 어느
IDictionary<int, ValueFortheObject>
또는
Dictionary<DomainObject, ValueFortheObject>
을 만들 수 있습니다 첫 번째 옵션을 사용하면
Mock<DomainObject>
을 사용하는 것보다는 테스트 케이스를 사용하는 것이 좋습니다.Id
에있는 setter는 모든 도메인 객체에서private
입니다.Dictionary<Hobbit,List<Adventures>>
댓글이내 질문에
hobbitId
을 알리는와
Dictionary<int,List<Adventures>>
보다 나에게 더 읽을로
가 코드를 읽기 것은 다음과 같습니다
초당 첫 번째 옵션을 사용하면 어떤 이점이 있습니까?
두 번째 방법을 사용하면 성능 문제가 발생합니까?
업데이트 01 :
내 도메인 모델들을 구현하고 작업을 수행하는 동안 그들은 돌연변이하지 않습니다.
성능을 키로 사용하는 데 문제가 있습니까? 또는 나는 완전히 여기에서 요점을 놓치고 성능/메모리는 어떤 키가 사용되는 것과 관련이 없습니까?
업데이트 02 :
내 질문
내가 대신 원시 형의 키와 왜/어떻게 같은 개체를 사용하는 경우- 은 성능이나 메모리에 문제가있을 것인가?
사전에 익숙합니까? 그것은 키/값 쌍을 사용합니다 .. 또한 중복 키를 허용해서는 안됩니다. 예를 들어 Hashtable에 대해 생각해 보셨습니까? Dictionary> 더 읽기 쉽지만 실제 코드를 보지 않아도 무엇인지 판단하기가 어렵습니다. 당신은 정확하게 내 생각에 노력하고 있습니다 –
MethodMan
사전을 어떻게 구체적으로 사용하고 싶습니까? – CSharpie
다른 방법의 인덱스를 사용하여 배열에서 발생을 계산하는 빠르고 더러운 방법을 사용했습니다. – aremvee