Librería de clase base
(BCL)
La Librería de Clase Base (BCL)
es una librería incluida en el .NET
Framework formada por cientos de tipos de datos que permiten acceder a los
servicios ofrecidos por el CLR y a las funcionalidades más frecuentemente
usadas a la hora de escribir programas. Además, a partir de estas clases
prefabricadas el programador puede crear nuevas clases que mediante herencia extiendan
su funcionalidad y se integren a la perfección con el resto de clases de la
BCL. Por ejemplo, implementando ciertos interfaces podemos crear nuevos tipos
de colecciones que serán tratadas exactamente igual que cualquiera de las
colecciones incluidas en la BCL.
Esta librería está escrita en
MSIL, por lo que puede usarse desde cualquier
lenguaje cuyo compilador genere MSIL. A través de las clases
suministradas en ella es posible desarrollar cualquier tipo de aplicación, desde
las tradicionales aplicaciones de ventanas, consola o servicio de Windows NT
hasta los novedosos servicios Web y páginas ASP.NET. Es tal la riqueza de
servicios que ofrece que puede crearse lenguajes que carezcan de librería de
clases propia y sólo usen la BCL -como C#.
Dado la amplitud de la BCL, ha
sido necesario organizar las clases en ella incluida en espacios de nombres que agrupen clases con funcionalidades
similares. Por ejemplo, los espacios de nombres más usados son:
|
Espacio de nombres
|
Utilidad de los tipos de datos que contiene
|
|
System
|
Tipos muy frecuentemente
usados, como los los tipos básicos, tablas, excepciones, fechas, números
aleatorios, recolector de basura, entrada/salida en consola, etc.
|
|
System.Collections
|
Colecciones de datos de uso
común como pilas, colas, listas, diccionarios, etc.
|
|
System.Data
|
Manipulación de bases de datos.
Forman la denominada arquitectura ADO.NET.
|
|
System.IO
|
Manipulación de ficheros y
otros flujos de datos.
|
|
System.Net
|
Realización de comunicaciones
en red.
|
|
System.Reflection
|
Acceso a los metadatos que
acompañan a los módulos de código.
|
|
System.Runtime.Remoting
|
Acceso a objetos remotos.
|
|
System.Security
|
Acceso a la política de
seguridad en que se basa el CLR.
|
|
System.Threading
|
Manipulación de hilos.
|
|
System.Web.UI.WebControls
|
Creación de interfaces de
usuario basadas en ventanas para aplicaciones Web.
|
|
System.Winforms
|
Creación de interfaces de
usuario basadas en ventanas para aplicaciones estándar.
|
|
System.XML
|
Acceso a datos en formato XML.
|
Tabla 3: Espacios de nombres de la BCL más usados
Principal