BCL(基础类库)与FCL(框架类库)


Answers:


98

基类库(BCL)实际上就是基。它包含基本的基本类型,例如System.StringSystem.DateTime

框架类库(FCL)是包含全部内容的更广泛的库:ASP.NET,WinForms,XML堆栈,ADO.NET等。您可以说FCL包括BCL。


35
简单来说,.NET Framework =库(FCL,BCL),语言编译器(C#,VB.NET)和公共语言运行时(CLR)。另外,还有围绕着它的整个生态系统:Visual Studio,MSDN帮助等。
Andrew Webb

1
@JoanVenge BCL是FCL的子集;BCL是FCL的子组件,而不是单独的组件。
iliketocode

26

BCL

BCL是.NET Framework库,是C#运行时库的标准,并且是公共语言基础结构(CLI)标准库之一。BCL提供了代表内置CLI数据类型,基本文件访问,集合,自定义属性,格式,安全性属性,I / O流,字符串操作等的类型。

FCL

.NET Framework类库正是其名称所暗示的含义:开发人员可用来简化生活的类和其他类型的库。这些类本身都是用C#编写的,但可以从任何基于CLR的语言中使用它们。

您将使用BCL以及每种项目类型的FCL的某些部分。因此,System.Windows.Forms(一个单独的库)或System.Web,以及来自mscorlib和System.dll的BCL


4
在微软,我相信CLR团队拥有BCL,而许多团队拥有FCL的不同部分。
rjdevereux

22

BCL代表基类库,也称为类库(CL)。BCL是Framework类库(FCL)的子集。类库是与CLR紧密集成的可重用类型的集合。基本类库提供有助于执行日常操作的类和类型,例如处理字符串和原始类型,数据库连接,IO操作。

而Framework类库包含数千个用于构建不同类型的应用程序的类,并提供了应用程序所需的所有基本功能和服务。FCL包括支持不同应用程序的类和服务,例如

  • 桌面应用程序

  • Web应用程序(ASP.Net,MVC,WCF),

  • 移动应用

  • Xbox应用程序

  • Windows服务等

更多详细信息,在什么是BCL / CL在.net中?

在此处输入图片说明


ashish:您能否提供有关BCL的更多描述性答案
amitguptageek

4
不错,一张图片值得一千个单词
mkb


13

基本类库(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)是BCL类的超集,是指.NET Framework附带的整个类库。它包括一组扩展的库,包括Windows窗体,ADO.NET,ASP.NET,语言集成查询,Windows Presentation Foundation,Windows Communication Foundation等。

因此存在差异,您不能互换使用。


12

BCL是FCL的子集。BCL遵守ECMA通用语言基础结构规范。然后,Microsoft添加了它们的所有优点,例如数据和xml,并将其称为“框架类库”。基本上,他们采用了BCL并使其达到11!


2
谢谢,“转到11”是什么意思?
Joan Venge

10
脊髓水龙头参考
克里斯S

1
还没听说过那个。你能告诉我这意味着什么,所以我不会被排除在外吗?
琼·芬格

8
因此,在电影“这是脊髓轻敲”中,讽刺性地模仿了重金属乐队,吉他手(Nigel Tufnel)展示了他特别为Marty DiBergi制作的放大器:Nigel Tufnel:数字都去十一点。看,全线,十一,十一,十一和……马蒂·迪贝吉:哦,我明白了。而且大多数安培数最多可达十?:是的。:这是否意味着声音更大?有更大声吗?:好吧,是大声一点,不是吗?
Ichorus

1
@Ichorus,但为什么不让它们大声十点呢?
西蒙·博斯利

8

以下内容摘自《 C#播放器指南》一书。

BCL包含所有内置类型,数组,异常,数学库,基本文件I / O,安全性,集合,反射,网络,字符串处理,线程化等。虽然不是一个完美的指南,但通常的规则是,任何以System开头的名称空间都是BCL的一部分。

除了BCL,Microsoft .NET Framework还附带了许多其他类。通常,这些附加功能涵盖了广泛的功能领域,例如数据库访问或图形用户界面(Windows窗体或WPF)。包括BCL在内的整个集合称为框架类库或FCL。在不经意的讨论中,有时人们会交替使用FCL和BCL,虽然严格意义上讲这不是正确的,但对于大多数事情来说可能就足够了。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.