2009-11-11 4 views

답변

3

요구 사항 수집. 아키텍처의 경우, 비 기능 요구 사항은 종종 기능 요구 사항보다 중요합니다.

1

나는 "너는 어울리는 편이다."라고 말하고 싶습니다.

tou가 관계형 모델을 사용하는 경우 어쨌든 (예 : ORM을 사용하여) OO 세계와의 간격을 메워야합니다.

나는 보통 데이터베이스 작업을 시작하지만 시스템의 전체 클래스 다이어그램은 데이터베이스 설계 단계를 크게 향상시킬 수 있습니다.

방법론도 고려해야합니다. 민첩한 접근 방식과 TDD는 스키마의 강렬한 변화를보다 잘 처리 할 수 ​​있으므로 테이블, 필드 (또는 클래스)를 쉽게 추가/제거 할 수 있으며 원할 때마다 두 가지 전략을 모두 사용할 수 있습니다. 당신은 ... 나는 다음 클래스 구조 데이터베이스 먼저 갈 것이 두 가지 옵션에 대한

1

...

일반적으로 클래스 구조가 데이터베이스에 의해 수용되어야한다 비즈니스 오브젝트를 나타냅니다, 그럼에도 불구하고 그 일반의 그런 경우가 많습니다. 일반적으로 응용 프로그램에 대한 실제 비즈니스 클래스 테이블과 관계의 개념화 데이터베이스와 컬렉션으로 다음의 추상화, 개체를 생각하는 대부분의 "중심의 사업"에 대한

  • . 당신이 클래스 디자인이라면 비교적 괜찮은 클래스이고 데이터베이스 테이블은 그다지 다르지 않아야합니다.
  • 전문가 시스템 또는 데이터 마이닝에서와 같이 "정보 중심의 문제"가있는 경우 먼저 데이터베이스를 검색하십시오. 또는 (영구적) 클래스는 소프트웨어의 단지 작은 부분
0

데이터베이스 ... 보통

, 사람들은 더 나은 (SQL 또는 코드) 알고있는 기술을 선택하고,이에 따라 다른 하나를 정의 .

ORM을 사용해야합니다.

0

동시에 두 단계를 수행하십시오. 다른 쪽을보기 전에 "100 % 완료"를 시도하지 마십시오.

이유는 개체와 데이터베이스간에 1 : 1 매핑이 없기 때문입니다. 예를 들어, 오브젝트 트리를 작성하는 것은 매우 간단합니다. 대부분의 ORM 프레임 워크는 데이터베이스에 맵핑 할 때 심각한 문제가 있습니다. 또한 모든 코드를 다시 작성하지 않고도 기존 앱에 트랜잭션 처리 기능을 추가하는 것은 불가능합니다.

시작하기 훌륭한 DB 모델로 시작하면 개체 모델로 어떻게 표현할 수 있는지 명확하지 않은 상황이 생길 수 있습니다. DB 문제가 개체 모델로 누출됩니다.

이것은 자동 기능 테스트를 통해 가정을 보호하면서 기능을 추가 할 때 배우는 동시에 앱의 두 부분을 동시에 진화시켜야하는 이유입니다.