2013-06-12 4 views
-4

내가 지정이 클래스의최고의 디자인은

public class MySetting 
{ 
    public string Name {set; get;} 
    public TileBeh Tile{set; get;} 
} 

객체를 MySetting 예를 들어 클래스가 있습니다. 나는 그들이 미리 정의 된 것을 의미합니다. 이러한 개체는 모든 응용 프로그램에서 일정합니다. 또한 앱의 전체 수명 시간에서 수정됩니다. 어떻게 코드의 이해가 향상되어 이러한 개체를 관리 할 수 ​​있습니다. 어떠한 제안?

업데이트 :

예를 들어, 응용 프로그램 전체에서이 클래스의 네 가지 목적이있다.

  1. 없음
  2. 동적
  3. 성 이름

하고 다음과 같은 방법이 적절한으로 내가 그들을 사용할 수 있는지

  • :

    MySetting.None.Value 
    
  • +3

    '어떤 제안? '- 예. 질문을 향상 시키십시오. 나는 당신이 필요로하고 당신의 문제가 무엇인지 이해할 수 없습니다. –

    +1

    당신이 묻고있는 것을 이해하기가 어렵지만, 정적 클래스에 대해 알고 싶습니다. 인스턴스 당 클래스가 아닌 클래스마다 무언가가 필요합니다. – DarthVader

    +0

    이 애플리케이션은 어떤 플랫폼 (예 : Windows Forms, Web Forms)에서 실행되고 있습니까? –

    답변

    3

    이 같은 클래스 구조를 고려 :

    public static class Settings 
    { 
        public static MySetting None = new MySetting() { ... }; 
        public static MySetting Dynamic = new MySetting() { ... }; 
    } 
    
    당신도이 같은 정적 필드를 초기화하는 것을 Settings 클래스의 정적 생성자를 만들 수

    : 당신은 아마 다음과 같이 원하는 경우 또한

    public static Settings() { ... } 
    

    , 당신은 속성으로 사람들을 돌 수 있었다를 :

    public static MySetting None { get; private set; } 
    

    이는 클래스를 훨씬 더 캡슐화합니다. fields 또는 properties을 캡슐화하려는 방법을 둘러싼 몇 가지 옵션이 있습니다.

    +0

    도움을 주셔서 감사합니다 – Mahdi

    +0

    @Mahdi, 문제가 아니므로 도움이 될 수있어서 기쁩니다! –

    +0

    좋은 질문이 아니라는 것을 알고 있지만 어리석은 질문은 없습니다. ;) thanks again – Mahdi