프로젝트 형식 디자인 결정
새 프로젝트 형식을 만들기 전에 프로젝트 형식에 대해 몇 가지 디자인 결정을 내려야 합니다. 프로젝트에 포함할 항목 형식, 프로젝트 파일을 유지하는 방법 및 사용할 약정 모델을 결정해야 합니다.
프로젝트 항목
프로젝트에서 파일이나 추상 개체를 사용하나요? 파일을 사용하는 경우 참조 기반 파일인가요? 아니면 디렉터리 기반 파일인가요? 파일 또는 추상 개체가 로컬 또는 원격이 되나요?
프로젝트의 항목은 파일이거나, 데이터베이스 리포지토리의 개체 또는 인터넷을 통한 데이터 연결과 같은 더욱 추상적인 개체일 수 있습니다. 항목이 파일인 경우 프로젝트는 참조 기반 또는 디렉터리 기반 프로젝트일 수 있습니다.
참조 기반 프로젝트에서 항목은 둘 이상의 프로젝트에 표시할 수 있습니다. 그러나 항목이 나타내는 실제 파일은 하나의 디렉터리에만 있습니다. 디렉터리 기반 프로젝트에서는 모든 프로젝트 항목이 디렉터리 구조에 있습니다.
로컬 항목은 애플리케이션이 설치된 동일한 컴퓨터에 저장됩니다. 원격 항목은 로컬 네트워크 또는 인터넷의 다른 위치에 있는 별도의 서버에 저장할 수 있습니다.
프로젝트 파일 지속성
데이터는 일반적인 플랫 파일 시스템 또는 구조적 스토리지에 저장되나요? 표준 편집기 또는 프로젝트별 편집기를 사용하여 파일이 열리나요?
데이터를 유지하기 위해 대부분의 애플리케이션은 데이터를 파일에 저장한 다음, 사용자가 정보를 검토하거나 변경해야 할 때 다시 읽습니다.
복합 파일이라고도 하는 구조적 스토리지는 일반적으로 여러 COM(구성 요소 개체 모델) 개체가 단일 파일에 영구 데이터를 저장해야 할 때 사용됩니다. 구조적 스토리지를 사용하면 여러 소프트웨어 구성 요소가 단일 디스크 파일을 공유할 수 있습니다.
프로젝트의 항목에 대한 지속성과 관련하여 고려해야 할 몇 가지 옵션이 있습니다. 다음 옵션 중 하나를 수행할 수 있습니다.
변경된 경우 각 파일을 개별적으로 저장합니다.
단일 저장 작업에서 많은 트랜잭션을 캡처합니다.
파일을 로컬로 저장한 다음, 서버에 게시하거나 항목이 원격 개체에 대한 데이터 연결을 나타내는 경우 프로젝트 항목을 저장하는 다른 방식을 사용합니다.
지속성에 대한 자세한 정보는 프로젝트 지속성 및 프로젝트 항목 열기 및 저장을 참조하세요.
프로젝트 약정 모델
지속형 데이터 개체가 직접 모드 또는 트랜잭션 모드로 열리나요?
데이터 개체가 직접 모드로 열리면 데이터에 대한 변경 내용이 즉시 통합되거나 사용자가 파일을 수동으로 저장할 때 통합됩니다.
트랜잭션 모드를 사용하여 데이터 개체를 열면 변경 내용이 메모리의 임시 위치에 저장되고 사용자가 수동으로 파일 저장을 선택할 때까지 커밋되지 않습니다. 이때 모든 변경 내용은 함께 발생해야 하며 그렇지 않으면 변경 사항이 적용되지 않습니다.