우리 회사는 테스트 프로젝트 지원과 함께 많은 클래스의 libary 프로젝트로 구성된 공통 코드 라이브러리를 보유하고 있습니다. 각 클래스 라이브러리 프로젝트는 단일 바이너리를 출력합니다. Company.Common.Serialization.dll. 컴파일되고 테스트 된 바이너리와 소스 코드를 소유하고 있기 때문에 우리가 사용하는 응용 프로그램에서 바이너리 또는 프로젝트 참조를 사용해야하는지 여부에 대한 논쟁이 있습니다. 프로젝트 참조에 찬성언제 바이너리 참조와 반대되는 프로젝트 참조를 사용해야합니까?
일부 인수 :
- 프로젝트 참조는 사용자가 디버깅 및 추가 프로젝트/솔루션을로드하는 오버 헤드없이 모든 솔루션 코드를 볼 수있다.
- 프로젝트 참조는 소스 제어 시스템에 커밋 된 공통 구성 요소 변경 사항을 유지하는 데 도움이되며 변경 사항은 활성 솔루션없이 쉽게 식별 할 수 있습니다. 바이너리 참조 찬성
일부 인수 :
- 진 참조 솔루션을 단순화하고 빠른 솔루션 로딩 시간을 위해 만들 것입니다.
- 바이너리 참조는 개발자가 이미 구워지고 안정된 것으로 입증 된 코드에주의를 기울이지 않고 새로운 코드에만 집중할 수있게합니다.
- 진 참조는 우리가 우리 조직의 그 외부가 수행해야하는 것과 마찬가지로 공용 라이브러리를 사용하는 것처럼 적절하게 우리의 물건을 dogfood에 우리를 강제.
- 바이너리 참조 디버깅 할 수 없기 때문에 (에 들어갔다), 하나 복제하고 기존 테스트 프로젝트를 확장보다는 테스트하고 혼자 소비 응용 프로그램의 컨텍스트 내에서 고정하여 문제를 해결하도록 강요 될 것이다.
- 진 참조는 이진의 안정 버전이 유입 버전보다는 참조 할 것 같은 클래스 라이브러리 프로젝트에 동시 개발이 소비하는 응용 프로그램에 영향을주지 않습니다 것을 보장합니다. 필요한 경우 구성 요소의 최신 릴리스를 통합할지 여부는 프로젝트 책임자의 결정입니다.
이 프로젝트 또는 바이너리 참조를 사용에 관해서 정책/환경 설정은 무엇입니까?
질문에 중요한 포인트가 없습니다. 프로젝트 참조를 사용하면 상호 참조 기능을 사용하고 도구를 사용하여 변수/메소드의 용도를 찾을 수 있습니다. 바이너리 참조에서는이 기능을 사용할 수 없습니다. –