문제

나는 보통 c#/. net에서 일한다고 말함으로써 이것을 서두르겠습니다.

일반적으로 공통적으로 재사용 가능한 구성 요소를 조직과 프로젝트 별 구성 요소를 프로젝트와 관련된 네임 스페이스로 반영하는 네임 스페이스에 표시하는 이름 지정 체계를 사용합니다. 내가하는 이유 중 하나는 때때로 부서 외부의 다른 사람들과 내 구성 요소를 공유하기 때문입니다. 프로젝트 별 네임 스페이스는 일반적으로 부서의 이름 또는 약어와 함께 미리 정리됩니다. 프로젝트 간 코드를 재사용하면 일반적으로 조직 기반 네임 스페이스 중 하나로 마이그레이션합니다.

예를 들어:

UIOWA.DirectoryServices Active Directory의 특정 구현을 다루는 클래스가 포함되어 있습니다.

UIOWA.Calendar 대학의 마스터 캘린더를 다루는 수업이 포함되어 있습니다.

LST.Inventory.Datalayer 학습 공간 기술 그룹 인벤토리 애플리케이션의 데이터 계층을 구현하는 클래스를 보유합니다.

저는 지금 우리 대학 밖에서 판매 될 가능성이있는 Unviersity (자선 행사를 운영하는 학생 그룹)와 더 퍼지는 단체를위한 프로젝트를 시작하고 있습니다. 따라서 실제로 적합하지 않습니다. 저의 정상적인 이름 지정 규칙, 즉, 부서는 프로젝트를 사용할 수있는 잠재적 인 많은 고객 일뿐입니다.

저의 성향은 조직 명명 경로로 가서이 응용 프로그램의 "조직 프로젝트"이름 공간을 만드는 것입니다. 나는 다른 사람들이 이것을 어떻게 처리하고 당신이 가질 수있는 조언을 듣고 싶습니다.

감사.

또한보십시오 이 관련 질문 네임 스페이스 조직.

편집하다

결국 조직/프로젝트 네임 스페이스를 만들었습니다 UIOWA.MasterEvent 그리고 거기에서 더 많은 네임 스페이스를 도출합니다. 미래 프로젝트에 대한 다른 의견에 여전히 관심이 있습니다.

도움이 되었습니까?

해결책

내 부서는 지난 5 년 동안 그의 이름이 3 번 바뀌 었습니다. 그래서 우리는 누군가가 조직 이름이있는 네임 스페이스를 사용하지 않기로 결정한 것을 기쁘게 생각합니다 ...

당사의 네임 스페이스는 프로젝트 이름으로 구성됩니다. 재사용 가능한 물건은 Toolbox 네임 스페이스. 아마도 약간 조잡하지만 지금까지 잘 작동합니다.

다른 팁

저는 .NET 개발자이며 독창성을 보장하기 때문에 항상 조직 프로젝트 네임 스페이스 (com.bolidian.projectspace)를 사용합니다.

나는 조직을 사용하고 제품을 사용하여 acme.crm을 사용합니다. 서브 니메 공간에서 클래스를 함께 그룹화 할 때는 항상 복수 또는 동작을 사용하여 클래스와 충돌 할 수 없습니다. 예를 들어

  • acme.crm.letters
  • acme.crm.invoicing

나는 SQL 대신 CRM 대신 CRM 대신 CRM의 약어를 활용하지 않음으로써 Microsoft의 컨벤션을 따릅니다. 그러나 그것은 더 개인적인 취향입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top