2009-08-15 6 views
8

나는 종종 "CORE"라는 라이브러리를 명명 한 다른 개발자를 보았습니다. 그것은 실제로 무엇을 의미합니까?도서관 디자인 컨텍스트에서 "핵심"은 무엇을 의미합니까?

+3

왜 그렇습니까? 핵심의 의미는 주관적입니까? –

+0

위키 피 디아에는 "위키피디아는 사전이 아닙니다."라고 쓰여있는 http://en.wikipedia.org/wiki/What_wp_is_not 페이지가 있습니다. 우리가 SOFAQ에 가지고 있어야한다고 생각해 ... –

+0

뭐라고 요? Wikipedia 정책에 따라 StackOverflow에서 정책을 설정하고 있습니까? –

답변

6

제 생각에는 CORE는 필수적인 것을 의미합니다. 수학적 기능과 유틸리티 목적의 다른 기능은 핵심이 아닙니다. 그들은 오히려 "Utils"입니다.

코어는 다른 모든 것이 존재하게 만드는 부분입니다. 코어에없는 다른 것들은 제거 될 수 있습니다 (디자인 상으로는 항상 가능하지는 않음).

+0

+1 : .Net 프레임 워크의 구현을 잘 읽은 학생이라고 말할 수는 없지만 일반적인 노출로 보아 이것은 System.Core 및 mscorlib의 목적과 일치하는 것으로 보입니다. –

+0

나는 Utils의 개념에 동의하고 싶습니다. –

+1

코어는 다른 모든 것이 종속되어있는 것입니다. –

4

나는이 규칙을 사용하며 기본적으로 고유 한 유틸리티 클래스와 코드를 가진 핵심 클래스 라이브러리이며 실제로는 자체 라이브러리에 아무 것도 없다.

예를 들어, 많은 클래스에 대한 확장 메소드, 여분의 수학 함수 등. 다른 프로젝트 전체를 보증하기에 충분하지 않은 것들.

다른 사람들은 잘 모릅니다.

6

I asked Bing "코어"를 정의합니다. 그것을 생각 해낸 정의 중 하나였다

필수적인 부분 : 중앙 또는

그러니까 기본적으로, 사람 이름 라이브러리 코어, 그것은 중앙과 가장 때 뭔가의 가장 중요한 부분 응용 프로그램 및/또는 프레임 워크의 중요한 부분 :-)

+0

당신은 더 구체적 일 수 있습니까? 즉, 핵심에 넣을 물건의 샘플. 저는 DataAccess, BusinessLogic, 프리젠 테이션, 구성, 오류 처리, 유틸리티 등에 대한 별도의 프로젝트가 있습니다. 코어에 남겨 둘 내용이 있는지 또는 그 중 일부가 코어 – Dkong

+2

빙! ??!?! 왜! – micmoo

+0

@micmoo, 존재하기 때문에. Bing은 직접 사용하지 않지만 검색 엔진을 사용하는 것은 그의 선택입니다. –

1

코어를 응용 프로그램의 핵심으로 봅니다. 코어는 일반적으로 전체 응용 프로그램의 동작을 정의하는 데 충분한 논리를 구현합니다.

제 견해로는 데이터 액세스와 프리젠 테이션이 코어의 일부가되어서는 안됩니다. 따라서 웹 및 데스크톱 응용 프로그램 모두에서 동일한 코어 모듈을 공유 할 수 있습니다.

귀하의 경우에는 비즈니스 로직, 오류 처리 및 구성이 핵심 모듈에 포함되었을 것입니다.

큰 코어 모듈을 사용하는 주된 이유는 더 작은 모듈을 많이 유지해야하는 비용을 피하는 것입니다.

0

해당 공급 업체에서 사용할 수있는 다른 라이브러리의 필수 조건으로 core를 참조하십시오. 따라서 공급 업체가 여러 가지 독립적 인 패키지를 제공 할 수 있지만 모든 일을 끝내기 위해 핵심 패키지에 의존합니다. 그렇지 않으면 심각한 코드 중복이 발생할 수 있습니다.

1

이것은 아마도 이단으로 판단 될 것입니다. 그러나 데이터 액세스, 비즈니스 로직 등을위한 별도의 프로젝트로 수년 간의 솔루션을 구조화 한 후에는 이러한 레이어를 MyApp라는 단일 프로젝트에 추가 할 가능성이 높습니다. 기본 솔루션은 핵심 프로젝트와 UI 프로젝트로만 구성됩니다. 다른 프로젝트를 추가하거나 추가 할 필요가 없다는 것은 아닙니다 (예 : MyApp.Tests). 기본 구조는이 둘을 기반으로합니다.

편집 : 의견에서 제안마다 요약됩니다.

+0

-1 : 귀하의 답변이 질문을 훨씬 뛰어 넘고 블로그 게시물이나 토론의 시작이되었습니다. 이 조각들을 모아서 "코어"라고 부른 후에는 편집을 중단하시는 것이 좋습니다. –

+0

와츠 흥미로운 것은 포드 캐스트에서 반복적으로 말한 사이트 관리자의 의견과는 대조적으로 좋은 답변은 상세한 정보이며 지원 정보를 제공하는 것입니다. 수많은 정보를 통해 커뮤니티에 반영된 것으로 보입니다. 세부 사항에 대한 감사의 뜻을 표기하는 의견으로 투표했습니다. 또한 컨텍스트없이 본질적으로 주관적인 대답을 잘라내어 "나는 푸른 색"을 말하지 않고 거의 임의로 렌더링하는 재미있는 제안입니다. 각자 자신에게 :-) –

+0

Meh, 더 깊은 고려에 나는 블로깅을 시작할 이유가 필요했다. 편집하기. –

1

이미 게시 된 답변을 바탕으로 분명히 "핵심"을 정의하는 "표준"방법은 라이브러리 개발과 관련이 없기 때문입니다.

그래서 나는 "올바른"것에 대해 걱정하지 않을 것입니다. 당신이 적합하다고 생각하는 용어를 사용하십시오.