저는 몇 년 동안 PHP로 프로그래밍 해 왔으며 과거에는 내 응용 프로그램 내에서 데이터를 처리하기 위해 내 방식을 채택했습니다.PHP 도메인 모델
나는 과거에 내 자신의 MVC를 구축했고 PHP 내에서 OOP에 대한 합리적인 이해를 가지고 있지만 구현에 심각한 문제가 있음을 알고 있습니다.
이전에는 모델과 데이터베이스 테이블 사이에 is-a 관계를 사용했습니다. 나는 이것이 실제로 최선의 방법이 아니라는 것을 약간의 연구를 한 후에 알았다. 필자가 이해하는 한, 기본 데이터베이스 (또는 사용되는 저장 메커니즘이 무엇이든)를 신경 쓰지 않고 자신의 행동과 데이터만을 신경 써야하는 모델을 만들어야합니다.
이 모델을 만들 수 있습니다. 예를 들어 Person 이 사람 객체는 배열에 보유 된 Person 객체 인 일부 Children (인간 자식)을 가질 수 있습니다 (addPerson 및 removePerson 메서드, Person 객체를 받아들임).
그러면 특정 'id'가있는 사람을 얻거나 Person을 저장하는 데 사용할 수있는 PersonMapper를 만들 수 있습니다.
그러면 조회 테이블에서 관계 데이터를 찾아 요청한 Person에 대한 관련 하위 오브젝트를 작성하고 save 명령의 조회 테이블에 데이터를 저장할 수 있습니다.
이 지금 내 지식의 한계를 추진하고있다 .....
내가 그 수준 내에서 서로 다른 수준의 다른 객실과 건물을 모델링하고 싶다면 무엇? 그 방에 물건을 넣고 싶으면 어떡하지?
나는 다음과 같은 구조의 건물, 수준, 룸 및 항목
에 대한 클래스를 만들겠습니까.
건물 1 또는 1을 가질 수 배열 방 유지 인쇄물 (1) 또는 다수의 공간을 가질 수있는 배열 레벨로 유지 많은 레벨 오브젝트 또는 어레이 각각
및 매퍼 개최 많은 항목 객체를 가질 수있다 상위 레벨 객체의 요청시 또는 요청시 지연로드 중 하나를 사용하여 자식 채우기를 사용하는 상위 수준 매퍼가있는 클래스
이것은 한 방향으로도 다른 객체를 단단히 연결하는 것처럼 보입니다 (예 : 건물에있을 필요는 없지만 건물에는 레벨이있을 수 있음)
이것은 올바른 방법인가요?
보기 내에서 레벨을 선택하고 방을 선택하는 옵션으로 레벨을 표시하는 건물을 보여주고 싶습니다.하지만 항목 구조와 같은 트리를 표시 할 수도 있습니다. 건물과 그들이 어느 수준과 방에 있는지에 관해 묻는 것.
나는 이것이 의미가 있기를 바란다. 나는 oop의 일반적인 개념이 사물을 분리하는 것처럼 보이면 서로 내에서 개체를 중첩하는 개념으로 고심하고있다.
누군가가 도움이된다면 정말 유용 할 것입니다.
네 스팅 사운드가 올바르게 들립니다. [프로그래머 사이트] (http://programmers.stackexchange.com)에서 동일한 질문을 시도해보십시오. – Malachi
게시물에 서명하지 마십시오. – Malachi
게시물 서명에 대해 죄송합니다. 향후 서명하지 마십시오. –