답변:
BCL (Base Class Library)은 말 그대로베이스입니다. 그것은 기본 포함, 기본 유형 좋아 System.String
하고 System.DateTime
.
FCL (Framework Class Library)은 ASP.NET, WinForms, XML 스택, ADO.NET 등 전체를 포함하는보다 광범위한 라이브러리입니다. FCL에 BCL이 포함되어 있다고 말할 수 있습니다.
.NET Framework 라이브러리 인 BCL은 C # 런타임 라이브러리의 표준이며 CLI (공용 언어 인프라) 표준 라이브러리 중 하나입니다. BCL은 내장 CLI 데이터 유형, 기본 파일 액세스, 콜렉션, 사용자 정의 속성, 형식화, 보안 속성, I / O 스트림, 문자열 조작 등을 나타내는 유형을 제공합니다.
.NET Framework 클래스 라이브러리는 이름에서 알 수 있듯이 개발자가 작업을보다 쉽게 수행하는 데 사용할 수있는 클래스 및 기타 형식 라이브러리입니다. 이러한 클래스는 자체적으로 C #으로 작성되지만 모든 CLR 기반 언어에서 사용할 수 있습니다.
각 프로젝트 유형과 함께 FCL의 일부 부분과 함께 BCL을 사용하게됩니다. 따라서 System.Windows.Forms (별도의 라이브러리) 또는 System.Web, mscorlib 및 System.dll의 BCL 포함
BCL 은 클래스 라이브러리 (CL)라고도하는 기본 클래스 라이브러리를 나타냅니다. BCL은 프레임 워크 클래스 라이브러리 (FCL)의 하위 집합입니다. 클래스 라이브러리는 CLR과 밀접하게 통합 된 재사용 가능한 형식의 모음입니다. 기본 클래스 라이브러리는 일상적인 작업을 수행하는 데 도움이되는 클래스 및 유형을 제공합니다 (예 : 문자열 및 기본 유형, 데이터베이스 연결, IO 작업 처리).
Framework 클래스 라이브러리에는 다양한 유형의 애플리케이션을 빌드하는 데 사용되는 수천 개의 클래스가 포함되어 있으며 애플리케이션에 필요한 모든 기본 기능과 서비스를 제공합니다. FCL에는 다양한 응용 프로그램을 지원하는 클래스 및 서비스가 포함됩니다.
데스크톱 애플리케이션,
웹 애플리케이션 (ASP.Net, MVC, WCF),
모바일 애플리케이션,
Xbox 응용 프로그램,
Windows 서비스 등
세부 사항에서 추가 BCL / CL은 닷넷에 무엇입니까?
기본 클래스 라이브러리 (BCL)는 공용 언어 런타임의 기본 API 역할을하는 핵심 클래스 집합입니다. mscorlib.dll의 클래스와 System.dll 및 System.core.dll의 일부 클래스는 BCL의 일부로 간주됩니다. 여기에는 System, System.Diagnostics, System.Globalization, System.Resources, System.Text, System.Runtime.Serialization 및 System.Data 등과 같은 네임 스페이스의 클래스가 포함됩니다.
FCL (Framework Class Library)은 BCL 클래스의 상위 집합이며 .NET Framework와 함께 제공되는 전체 클래스 라이브러리를 나타냅니다. 여기에는 Windows Forms, ADO.NET, ASP.NET, 언어 통합 쿼리, Windows Presentation Foundation, Windows Communication Foundation을 비롯한 확장 된 라이브러리 집합이 포함됩니다.
따라서 차이점이 있으며 서로 바꿔서 사용해서는 안됩니다.
BCL은 FCL의 하위 집합입니다. BCL은 공용 언어 인프라에 대한 ECMA 사양을 준수합니다. 그런 다음 Microsoft는 데이터 및 xml과 같은 모든 장점을 추가하고 프레임 워크 클래스 라이브러리라고 불렀습니다. 기본적으로 그들은 BCL을 가져와 11로 만들었습니다!
다음은 "The C # Player 's Guide"책에서 인용 한 것입니다.
BCL에는 모든 내장 유형, 배열, 예외, 수학 라이브러리, 기본 파일 I / O, 보안, 컬렉션, 리플렉션, 네트워킹, 문자열 조작, 스레딩 등이 포함됩니다. 완벽한 가이드는 아니지만 일반적인 규칙은 System으로 시작하는 모든 네임 스페이스가 BCL의 일부라는 것입니다.
BCL 외에도 Microsoft에서 .NET Framework와 함께 제공하는 더 많은 클래스가 있습니다. 일반적으로 이러한 추가 사항은 데이터베이스 액세스 또는 그래픽 사용자 인터페이스 (Windows Forms 또는 WPF)와 같은 광범위한 기능 영역을 포함합니다. BCL을 포함한이 전체 컬렉션을 프레임 워크 클래스 라이브러리 (FCL)라고합니다. 평범한 토론에서 때때로 사람들은 FCL과 BCL을 상호 교환하여 사용하는데, 이는 엄격하게 정확하지는 않지만 대부분의 경우 충분할 것입니다.