web-dev-qa-db-fra.com

BCL (Base Class Library) vs FCL (Framework Class Library)

Quelle est la différence entre les deux? Pouvons-nous les utiliser de manière interchangeable?

90
Joan Venge

La bibliothèque de classes de base (BCL) est littéralement cela, la base. Il contient des types basiques et fondamentaux comme System.String et System.DateTime.

La bibliothèque de classes Framework (FCL) est la bibliothèque la plus large qui contient la totalité: ASP.NET, WinForms, la pile XML, ADO.NET et plus encore. On pourrait dire que le FCL comprend le BCL.

91
Andrew Webb

BCL :

Une bibliothèque .NET Framework, BCL est la norme pour la bibliothèque d'exécution C # et l'une des bibliothèques standard Common Language Infrastructure (CLI). BCL fournit des types représentant les types de données CLI intégrés, l'accès aux fichiers de base, les collections, les attributs personnalisés, la mise en forme, les attributs de sécurité, les flux d'E/S, la manipulation de chaînes, etc.

FCL :

La bibliothèque de classes .NET Framework est exactement ce que son nom suggère: une bibliothèque de classes et d'autres types que les développeurs peuvent utiliser pour leur faciliter la vie. Bien que ces classes soient elles-mêmes écrites en C #, elles peuvent être utilisées à partir de n'importe quel langage basé sur CLR

Vous utiliserez le BCL avec certaines parties du FCL avec chaque type de projet. Donc System.Windows.Forms (une bibliothèque séparée) ou System.Web, avec le BCL de mscorlib et System.dll

25
Chris S

[~ # ~] bcl [~ # ~] signifie bibliothèque de classe de base également connue sous le nom de bibliothèque de classe (CL). BCL est un sous-ensemble de la bibliothèque de classes Framework (FCL). La bibliothèque de classes est la collection de types réutilisables qui sont étroitement intégrés à CLR. La bibliothèque de classes de base fournit des classes et des types qui sont utiles pour effectuer des opérations quotidiennes, par exemple traitement des chaînes et des types primitifs, connexion à la base de données, IO.

tandis que la bibliothèque de classes Framework contient des milliers de classes utilisées pour créer différents types d'applications et fournit toutes les fonctionnalités et services de base dont l'application a besoin. FCL comprend des classes et des services pour prendre en charge différentes variétés d'applications, par exemple.

  • Application de bureau,

  • Application Web (ASP.Net, MVC, WCF),

  • Application mobile,

  • Application Xbox,

  • services Windows, etc.

Plus de détails sur Qu'est-ce que BCL/CL dans .Net?

enter image description here

19
Ashish Shukla

La bibliothèque de classes de base (BCL) est l'ensemble de classes de base qui sert d'API de base du Common Language Runtime. Les classes de mscorlib.dll et certaines des classes de System.dll et System.core.dll sont considérées comme faisant partie de la BCL. Il inclut les classes dans des espaces de noms tels que System, System.Diagnostics, System.Globalization, System.Resources, System.Text, System.Runtime.Serialization et System.Data etc.

La bibliothèque de classes Framework (FCL) est un surensemble des classes BCL et fait référence à la bibliothèque de classes entière fournie avec .NET Framework. Il comprend un ensemble étendu de bibliothèques, notamment Windows Forms, ADO.NET, ASP.NET, Language Integrated Query, Windows Presentation Foundation, Windows Communication Foundation, entre autres.

Il y a donc des différences et vous ne devez pas les utiliser de manière interchangeable.

13
Praveen Prajapati

Le BCL est un sous-ensemble du FCL. BCL respecte la spécification ECMA pour l'infrastructure linguistique commune. Ensuite, Microsoft a ajouté toutes leurs qualités comme les données et le xml et l'a appelé la bibliothèque de classes Framework. Fondamentalement, ils ont pris le BCL et l'ont fait passer à 11!

12
Joshua Belden

Ce qui suit est extrait du livre "The C # Player's Guide".

Le BCL contient tous les types intégrés, tableaux, exceptions, bibliothèques mathématiques, E/S de fichiers de base, sécurité, collections, réflexion, mise en réseau, manipulation de chaînes, threading, etc. Bien que ce ne soit pas un guide parfait, une règle générale est que tout espace de noms commençant par System fait partie de la BCL.

Au-delà de la BCL, Microsoft propose de nombreuses autres classes avec le .NET Framework. En général, ces éléments supplémentaires couvrent de vastes domaines fonctionnels, tels que l'accès à la base de données ou les interfaces utilisateur graphiques (Windows Forms ou WPF). L'ensemble de cette collection, y compris le BCL, est appelé Framework Class Library ou FCL. Dans une discussion informelle, les gens utilisent parfois FCL et BCL de manière interchangeable, ce qui n'est pas strictement correct, mais c'est peut-être suffisant pour la plupart des choses.

8
user1899020