내 수업에서 데이터를 완전히 분리하려고하고 간단한 해결책을 생각해 냈습니다.이것은 알려진 패턴입니까?
class ClassAData
{
public int Property1;
public string Property2;
public bool Property3;
}
class ClassA : SomeInterface
{
public ClassAData Data;
//behaviour
public int CalculateSomething(int value)
{
...
return result;
}
public string SomeOtherMethod(){...}
}
(적절한 캡슐화가 적용됩니다 ...)
이것이 궁금한가요? 무언가에 의해 알려 지거나 공통된 패턴으로 사용됩니까? 또한 어떤 것이 있다면 단점은 무엇입니까?
편집 : 어쩌면 내가 이것을 사용하려고하는 곳을 분명히해야했습니다. 나는 모든 상황에서 모든 반원들에게 이것을 사용하도록 옹호하지 않는다. ClassA는 실제 도메인 개체이고 ClassAData는 서비스 레이어와 프레젠테이션 레이어간에 전송되는 DTO가되는 서비스 지향 응용 프로그램에서이 정보를 사용할 계획입니다. 이 접근법은 속성이 많은 클래스가 많은 경우 특히 코드 중복을 방지합니다.
농담 : 절차 프로그래밍을 재발견하려고합니까? :) – Geo
...기능적 프로그래밍이 당신을 기다리고 있습니다 ;-) – jldupont
ClassAData 회원은 비공개로해서 직접 액세스하지 않아야합니까? –