2010-07-09 3 views
3

시간이 지남에 따라 내가 유지 관리하는 코드베이스가 기하 급수적으로 증가했습니다. 우리는 다양한 유틸리티 클래스, 웹 파트, 이벤트 수신기, 콘솔 어플리케이션 등을 보유하고 있습니다.SharePoint 코드를 어떻게 구성해야합니까?

일반적으로 각 웹 파트는 별도의 DLL (웹 파트 당 솔루션 하나와 프로젝트 하나)에 있습니다. 우리의 유틸리티 클래스는 또한 자체적 인 별도의 DLL로 분리되어 있습니다.이 클래스는 DLL에서 빈들과 함께 그룹화 된 특수한 목록 액세스 클래스를 포함합니다. 이로 인해 유지 보수가 더 어려워진 솔루션이 상당 부분 생겨났습니다 (각 솔루션을 Visual Studio 2008로 업그레이드하거나 단순히 DLL 참조의 미로 찾기를 시도하는 것).

내 발견으로 SharePoint Guidance을 발견하고 현재 코드 구조를 다시 평가할 예정입니다. 예를 들어, 모든 특수화 된 목록 액세스 클래스를 리포지토리에 결합하는 것이 좋습니다 (코드에 대한 "솔루션"을 기반으로 DLL로 분할하여 완전히 반대의 결과를 얻었습니다).

질문 : 코드 작성은 어떻게해야합니까? 솔루션 대 프로젝트 대 폴더 또는 네임 스페이스에 들어가는 요소를 어떻게 결정합니까? 웹 파트 당 하나의 솔루션?

답변

0

나는 보통 기능별로 코드를 구성합니다. 익스트라 넷 프로젝트와 인트라넷 웹 파트에 대한 코드를 가지고 엑스트라 넷과 인트라넷 프로젝트로 분리하고 다른 클래스의 코드 (eventreceivers, timerjobs, webparts 등)를 다른 네임 스페이스에 분리한다고 가정 해 보겠습니다. 그런 식으로 원하는 경우 다른 팜에 기능 집합을 배포 할 수 있으며 코드를 편집 할 때 같은 위치에서 서로 의존하는 모든 것을 얻을 수 있습니다.

+0

이 접근 방식은 우리가 시도한 것입니다. 해야 할 일. 프로젝트간에 공유되는 코드가 있습니까? 모든 프로젝트를 유지하기 위해 하나의 MSVS 솔루션을 사용합니까? –

관련 문제