2009-11-09 5 views
2

주어진 디자인 특성 (속성, 메서드 등을 가진 클래스 디자인) 개선에 관심이 있습니다. 즉 클래스, 메소드 및 속성을 결정하는 방법은 무엇입니까?디자인 클래스 - OOPS 기능

여러분이이 문제를 개선하기에 좋은 자료를 제안 해 주시겠습니까?

+0

비슷한 질문이 여러 번 들었습니다 ..... –

+0

미치, 나는 그물에 대한 몇 가지 기본적인 연구를했습니다. 그렇다면 나는 좋은 조언을 얻을 것이기 때문에 포럼에서 묻는 것을 생각했다. 따라서이 질문에 –

+1

FYI - 어떤 사람들은 나에게 "HeadFirst : Object Oriented Analysis and Design"을 제안했습니다. –

답변

1

이 아마 모든 프로그래머 어느 날 생각 문제이다. 설계 기능은 점차적으로 사용자의 경험과 함께 제공됩니다. 내가 말하고자하는 것은 주어진 문제에 대한 데이터베이스 객체를 시각화 할 수 있다면 나머지는 칵테일이다 (DB가없는 techie 프로젝트에서 작업하는 경우 가끔 있음)

객체를 생각할 수있다. 현실 세계에서 상호 작용하여 프로세스를 완성한 다음 적절한 속성을 가진 클래스에 매핑 한 다음 동작을 정의하는 메서드를 만듭니다. 워크 플로 실행에 기여하는 클래스에만 집중할 수 있으며 개별 실제 개체에는 영향을 미치지 않습니다.

코드 디자인으로 바로 넘어 가기 전에 DB 설계에 집중하면 훨씬 간단 해집니다.

많이 달라집니다. MVC 관점에서 문제가 발생하면 "컨트롤러"클래스를 먼저 식별하는 등의 작업을하게됩니다.

나는 황금의 디자인 소스와 OOPS 지혜를 반복 할 필요가 없다고 생각한다. 이미 이미 여기 저기에 게시되어있다.

0

예를 엔티티 값 객체, 공장, 서비스 및 저장소와 GRASP patterns (일반 책임 할당 소프트웨어 패턴)을 정의하는 봐 Domain-DrivenDesign을 부여 전문가, 창조자, 관제사.

1

일부 UML 및 디자인 패턴을 읽어 보시기 바랍니다. 그것은 당신이 "그림"이라는 용어로 생각하게 할 수 있습니다. 큰 클래스/오브젝트를 쉽게 이해할 수 있습니다.

이 분야에서 좋은 책이 하나 있습니다. Applying UML and Patterns

0

부품 번호 screencast 첫 번째 부분은 실버 라이트가 아니라 코드 비트로 시작하여 클래스로 분류되는 명령 행 계산기입니다.

2
  1. 캡슐화 : 단일 유닛으로 데이터 및 기능의 배치는 최대 밀봉로 알려져있다. 또는 간단히 말하자면 데이터와 메소드를 하나의 단위로 묶는 것이 클래스 일 수 있습니다.

  2. 상속 : 상위 클래스에서 하위 클래스로 속성 가져 오기. 또는 : 수퍼 클래스에서 하위 클래스로 속성을 가져 오는 것은 상속으로 알려져 있습니다.

  3. 다형성 : 둘 이상의 형태를 취할 수있는 능력은, 그와 재정의 방법 오버 방법을 지원한다.

    메서드 오버로드 : 다른 인수 (diff 매개 변수 또는 서명)가있는 동일한 메서드 이름을 가진 클래스의 메서드가 메서드 오버로드이라고합니다. 이것은 하나의 식별자를 사용하여 동일한 범위의 여러 항목을 참조하는 컴파일 타임 다형성입니다.