Base Class Library


Base Class Library

The Base Class Library (BCL) is a standard library available to all languages using the .NET Framework. In order to make the programmer's job easier, .NET includes the BCL in order to encapsulate a large number of common functions, such as file reading and writing, graphic rendering, database interaction, and XML document manipulation. It is much larger in scope than standard libraries for most other languages, including C++, and would be comparable in scope to the standard libraries of Java. The BCL is sometimes incorrectly referred to as the Framework Class Library (FCL), which is a superset including the Microsoft.* namespaces.

The BCL is updated with each version of the .NET Framework.

Namespaces

Some of the namespaces may or may not be officially considered part of the BCL by Microsoft, but all are included as part of the standard libraries that are provided with the .NET Framework.

; System : This namespace includes the core needs for programming. It includes base types like String, DateTime, Boolean, and so forth, support for environments such as the console, math functions, and base classes for attributes, exceptions, and arrays.; System.CodeDom : This library provides the ability to create code and run it, at runtime. [ [http://msdn2.microsoft.com/en-us/library/system.codedom.aspx MSDN Documentation - System.CodeDom Namespace] ] ; System.Collections : Defines many common containers or collections used in programming, such as lists, queues, stacks, hashtables, and dictionaries. It includes support for generics.; System.ComponentModel : Provides the ability to implement the run-time and design-time behavior of components and controls. It contains the infrastructure "for implementing attributes and type converters, binding to data sources, and licensing components". [ [http://msdn2.microsoft.com/en-us/library/system.componentmodel.aspx MSDN Documentation - System.ComponentModel Namespace] ] ; System.Configuration : Provides the infrastructure for handling configuration data.; System.Data : This namespace represents the ADO.NET architecture, which is set of computer software components that can be used by programmers to access data and data services.; System.Deployment : Allows you to customize the way your application upgrades when using ClickOnce.; System.Diagnostics : Gives you the ability to diagnose your application. It includes event logging, performance counters, tracing, and interaction with system processes.; System.DirectoryServices : Provides easy access to Active Directory from managed code.; System.Drawing : Provides access to GDI+ graphics functionality, including support for 2D and vector graphics, imaging, printing, and text services.

; System.Globalization : Provides help for writing internationalized applications. "Culture-related information, including the language, the country/region, the calendars in use, [and] the format patterns for dates, currency, and numbers" can be defined. [ [http://msdn2.microsoft.com/en-us/library/system.globalization.aspx MSDN Documentation - System.Globalization Namespace] ] ; System.IO : Allows you to read from and write to different streams, such as files or other data streams. Also provides a connection to the file system.; System.Management : Allows you to query for information, "such as how much free space is left on the disk, what is the current CPU utilization, which database a certain application is connected to, and much more." [ [http://msdn2.microsoft.com/en-us/library/system.management.aspx MSDN Documentation - System.Management Namespace] ] ; System.Media : Provides you the ability to play system sounds and .wav files.; System.Messaging : Allows you "to connect to, monitor, and administer message queues on the network and send, receive, or peek messages." [ [http://msdn2.microsoft.com/en-us/library/system.messaging.aspx MSDN Documentation - System.Messaging Namespace] ] .NET Remoting is another name for some of the functionality provided. This namespace is being superseded by Windows Communication Foundation.; System.Net : Provides an interface "for many of the protocols used on networks today", [ [http://msdn2.microsoft.com/en-us/library/system.net.aspx MSDN Documentation - System.Net Namespace] ] such as HTTP, FTP, and SMTP. Secure communication is supported by protocols such as SSL.; System.Linq: Defines the IQueryable interface and related methods, that lets LINQ providers to be plugged in.; System.Linq.Expressions: Allows Delegates and Lambda expressions to be represeted as expression trees, so that the high-level code can be examined and processed at runtime.; System.Reflection : Provides an object view of types, methods, and fields. You have "the ability to dynamically create and invoke types". [ [http://msdn2.microsoft.com/en-us/library/system.reflection.aspx MSDN Documentation - System.Reflection Namespace] ] It exposes the API to access the Reflective programming capabilities of CLR.; System.Resources : Allows you to manage many different resources in the application in order to internationalize an application for different cultures and languages.; System.Runtime : Allows you to manage the runtime behavior of an application or the CLR. Some of the included abilities are interoping with COM or other native code, writing distributed applications, and serializing objects into binary or SOAP.; System.Security : "Provides the underlying structure of the common language runtime security system." [ [http://msdn2.microsoft.com/en-us/library/system.security.aspx MSDN Documentation - System.Security Namespace] ] This namespace allows you to build security into your application based on policy and permissions. It provides services such as cryptography.; System.ServiceProcess : Allows you to create applications that run as a service within Windows.; System.Text : Supports various encodings, regular expressions, and a more efficient mechanism for manipulating strings (StringBuilder).; System.Threading : Helps facilitate multithreaded programming. It allows the synchronizing of "thread activities and access to data" and provides "a pool of system-supplied threads". [ [http://msdn2.microsoft.com/en-us/library/system.threading.aspx MSDN Documentation - System.Threading Namespace] ] ; System.Timers : "Allows you to raise an event on a specified interval." [ [http://msdn2.microsoft.com/en-us/library/system.timers.aspx MSDN Documentation - System.Timers Namespace] ] ; System.Transactions : Provides support for local or distributed transactions.

See also

* ADO.NET
* ASP.NET
* Windows Forms
* Java Class Library
* Standard library

Other capabilities of the .NET framework

* Windows Presentation Foundation
* Windows Communication Foundation
* Windows Workflow Foundation
* Windows CardSpace

References

External links

* [http://msdn.microsoft.com/netframework/ .NET Framework Developer Center] . Microsoft Developer Network (MSDN).
* [http://msdn2.microsoft.com/en-us/netframework/aa569603.aspx Base Class Libraries Community] . More information and FAQs about the BCL.
* [http://download.microsoft.com/download/4/a/3/4a3c7c55-84ab-4588-84a4-f96424a7d82d/NET35_Namespaces_Poster_LORES.pdf .NET Framework 3.5 namespaces]
* [http://msdn2.microsoft.com/en-us/library/aa388745.aspx MSDN BCL Documentation] .
* [http://blogs.msdn.com/bclteam/ BCLTeam's WebLog] .


Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Base Class Library — Base Class Library, сокращённо BCL  стандартная библиотека классов платформы «.NET Framework». Программы, написанные на любом из языков, поддерживающих платформу .NET, могут пользоваться классами и методами BCL  создавать объекты… …   Википедия

  • Base Class Library — La Base Class Library (BCL) de Microsoft est une bibliothèque standard utilisée par tous les langages basés sur .NET Framework. Pour faciliter le travail du programmeur, .NET utilise la BCL pour encapsuler un grand nombre de fonctions communes,… …   Wikipédia en Français

  • Framework Class Library — The Framework Class Library (FCL) is a standard library and one of two core components of Microsoft .NET Framework. The FCL is a collection of thousands of reusable classes (within hundreds of namespaces), interfaces and value types. BCL(Base… …   Wikipedia

  • Microsoft Foundation Class Library — Developer(s) Microsoft Initial release 1992 Stable release 10.0.40219.1 [1] …   Wikipedia

  • Library (computing) — This article is about the programming concept. For Windows 7 Libraries, see Features new to Windows 7#Libraries. Illustration of an application which uses libvorbisfile to play an Ogg Vorbis file In computer science, a library is a collection of… …   Wikipedia

  • Base One Foundation Component Library — Infobox Software name = Base One Foundation Component Library (BFC) caption = collapsible = author = developer = Base One International Corp. released = latest release version = 7.40 latest release date = February 15, 2008 latest preview version …   Wikipedia

  • Class struggle — For other uses, see Class Struggle (disambiguation). Part of the series on Communism …   Wikipedia

  • library classification — System of arrangement adopted by a library to enable patrons to locate its materials quickly and easily. Classifications may be natural (e.g., by subject), artificial (e.g., by alphabet, form, or numerical order), or accidental (e.g.,… …   Universalium

  • Base One International — Infobox Company name = Base One International Corporation type = Private genre = foundation = 1993 founder = location city = location country = location = New York City locations = area served = key people = industry = Computer software products …   Wikipedia

  • Windows Template Library — Тип библиотека (программирование) Разработчик Nenad Stefanovic Написана на С++ Операционная система Microsoft Windows Последняя версия WTL 8.1.11324 (21.11.2011) Лицензия …   Википедия