2011-09-18 6 views
1

나는 개체 지향 프로그래밍과 수업을 디자인하기위한 새로운 방법에 익숙하다.개체와 개체 목록 간의 관계를 코딩하는 방법

내가 어떻게 그 자체의 목록을 보유하고있는 클래스를 디자인 할 수 있는지 궁금합니다. 예를 들어

, 나는 게임이라는 이름의 클래스는 다음과 같은 것 한 정의 :

게임

  • 제목
  • 설명
  • 스크린 샷
  • 플래시 (보유 플래시 게임 오브젝트)

내가 가고 싶다. 한 페이지에 게임 목록을 표시합니다. 어떤 접근 방식이 좋을까요? 다른 클래스 GameList를 만들고 나열 할 게임 배열을 만들거나 게임 목록을 표시하기 위해 Game.ListAll 함수를 만듭니다.

저는 이전 방법이 더 나은 접근 방법이라고 생각합니다. 나는 너의 가이드를 필요로한다. 또한 실제로 수업과 그 관계 등을 디자인 할 때 내 개념을 명확하게하기 위해 무엇을 공부해야할지 모르겠다. 이해하기 쉬운 CBT 책을 나에게 제안 해 줄 수 있습니까?

대단히 감사합니다.

-Navi

답변

0

난 당신이 사용하는하지만 난 로버트 C. 마틴 '애자 Priciples, 구글과 및 관행 "을 추천 할 수 languague 모르는 (너무 C# 버전이있다). OO 디자인에 대한 많은 정보와 함께 TDD와 Agile에 대한 중요한 모든 패턴과 멋진 소개가 있습니다. 또한 재미있게 읽을 수 있습니다. 귀하의 질문에

:

0

(당신이 C# 또는 Jave를 사용하는 경우에 상관없이 동일해야합니다) 예 나는이 나쁜 디자인이 될 것이라고 생각 첫 번째 아이디어를 이동하거나 List<Game> 같은 inbuild 모음을 사용하여 (고정) 메서드 listAll() 게임 내 : 게임은 다른 게임에 대해 알지 않아야합니다. 목록을 처리하기 위해 생성자 또는 팩토리 메서드가 필요하며 별도의 목록을 처리 할 수 ​​없습니다.

게임 외부의 목록을 사용하십시오. GameList의 특수한 동작이 필요하지 않은 경우 목록을 처리하는 필드 List가 수행합니다. 특수한 행동을 취한다면 GameList를 사용한 디자인이 올바른 선택입니다.

좋은 OO 디자인을 위해, 나는 다음과 같은 순서로을 읽을 것이다 다음 object mentors article list에서

  1. 관련 기사에 대한 개요를 얻을 수 있습니다. principles of ood에서 가장 관련성 높은 링크를 찾을 수 있습니다.
  2. 디자인 패턴에 관한 책, 나의 마음에 드는 여전히 고전 Design Patterns from the GoF
  3. Agile Software Development, Principles, Patterns, and Practices from Uncle Bob
을 읽을 수있는
관련 문제