Вы находитесь на странице: 1из 5

Sistema de tipos comunes

.NET Framework 4.5


Otras versiones

Common Type System define cmo se declaran, usan y administran los tipos en
Common Language Runtime. Es tambin una parte importante de la compatibilidad en
tiempo de ejecucin con la integracin entre lenguajes. El sistema de tipos comn
realiza las funciones siguientes:

Establece un marco de trabajo que


ayuda a permitir la integracin entre
lenguajes, la seguridad de tipos y la
ejecucin de cdigo de alto
rendimiento.

Proporciona un modelo orientado a


objetos que admite la
implementacin completa de muchos
lenguajes de programacin.

Define reglas que deben seguir los


lenguajes, lo que ayuda a garantizar
que los objetos escritos en distintos
lenguajes puedan interactuar unos
con otros.

Proporciona una biblioteca que


contiene los tipos de datos primitivos
(como Boolean, Byte, Char, Int32 y
UInt64) que se emplean en el
desarrollo de aplicaciones.

Tipos de .NET Framework

Definiciones de tipos

Miembros de tipos

Este tema contiene las siguientes secciones:

Caractersticas de los miembros de


tipos

Tipos de .NET Framework


Todos los tipos de .NET Framework son tipos de valor o tipos de referencia.
Los tipos de valor son tipos de datos cuyos objetos se representan mediante el valor real
del objeto. Si se asigna una instancia de un tipo de valor a una variable, esa variable
obtiene una copia reciente del valor.
Los tipos de referencia son tipos de datos cuyos objetos se representan mediante una
referencia (similar a un puntero) al valor real del objeto. Si se asigna un tipo de
referencia a una variable, esa variable hace referencia (o apunta) al valor original. No se
realiza ninguna copia.
Common Type System en .NET Framework admite las cinco categoras de tipos
siguientes:

Clases

Estructuras

Enumeraciones

Interfaces

Delegados

Clases
Una clase es un tipo de referencia que se puede derivar directamente de otra clase y que
se deriva implcitamente de System.Object. La clase define las operaciones que un
objeto (que es una instancia de la clase) puede realizar (mtodos, eventos o propiedades)
y los datos que el objeto contiene (campos). Aunque una clase suele incluir una
definicin y una implementacin (a diferencia, por ejemplo, de las interfaces, que solo
contienen una definicin sin implementacin), puede tener uno o varios miembros sin
implementacin.
En la tabla siguiente se describen algunas de las caractersticas que una clase puede
tener. Cada lenguaje compatible con el motor en tiempo de ejecucin proporciona una
forma de indicar que una clase o un miembro de clase tiene una o varias de estas
caractersticas. Sin embargo, puede que no estn disponibles todas estas caractersticas
en los lenguajes de programacin orientados a .NET Framework.

Caracterstica

Descripcin

sealed

Especifica que no se puede derivar otra clase de este tipo.

implements

Indica que la clase utiliza una o varias interfaces proporcionando


implementaciones de miembros de la interfaz.

abstract

Indica que no se pueden crear instancias de la clase. Para utilizarla se


debe derivar de ella otra clase.

inherits

Indica que las instancias de la clase se pueden utilizar en cualquier


lugar en que se especifique la clase base. Una clase derivada que
hereda de una clase base puede usar la implementacin de cualquier
miembro pblico proporcionado por la clase base o la clase derivada
puede invalidar la implementacin de los miembros pblicos con su
propia implementacin.

exported o not
exported

Indica si una clase est visible fuera del ensamblado en el que se


define. Esta caracterstica se aplica nicamente a las clases de nivel
superior y no a las clases anidadas.
Nota

Una clase tambin puede estar anidada en una estructura o clase primaria. Las clases
anidadas tienen tambin caractersticas de miembro. Para obtener ms informacin, vea
Tipos anidados.
Los miembros de clase que no tienen implementacin son miembros abstractos. Una
clase que tiene uno o varios miembros abstractos es abstracta y no se pueden crear
nuevas instancias de ella. Algunos lenguajes destinados al motor en tiempo de ejecucin
permiten marcar una clase como abstracta incluso aunque no tenga ningn miembro
abstracto. Se puede usar una clase abstracta cuando se desea encapsular un conjunto
bsico de funcionalidad que las clases derivadas pueden heredar o invalidar segn
corresponda. Las clases que no son abstractas se conocen como clases concretas.
NET Framework consta de dos componentes principales: Common Language Runtime
y la biblioteca de clases de .NET Framework. Common Language Runtime es el
fundamento de .NET Framework. El motor en tiempo de ejecucin se puede considerar
como un agente que administra el cdigo en tiempo de ejecucin y proporciona
servicios centrales, como la administracin de memoria, la administracin de
subprocesos y la comunicacin remota, al tiempo que aplica una seguridad estricta a los
tipos y otras formas de especificacin del cdigo que promueven su seguridad y solidez.

De hecho, el concepto de administracin de cdigo es un principio fundamental del


motor en tiempo de ejecucin. El cdigo destinado al motor en tiempo de ejecucin se
denomina cdigo administrado, a diferencia del resto de cdigo, que se conoce como
cdigo no administrado. La biblioteca de clases es una completa coleccin orientada a
objetos de tipos reutilizables que se pueden emplear para desarrollar aplicaciones que
abarcan desde las tradicionales herramientas de interfaz grfica de usuario (GUI) o de
lnea de comandos hasta las aplicaciones basadas en las innovaciones ms recientes
proporcionadas por ASP.NET, como Web Forms y Servicios Web XML.
.NET Framework puede hospedarse en componentes no administrados que cargan
Common Language Runtime en sus procesos e inician la ejecucin de cdigo
administrado, con lo que se crea un entorno de software en el que se pueden utilizar
caractersticas administradas y no administradas. En .NET Framework no slo se
ofrecen varios hosts de motor en tiempo de ejecucin, sino que tambin se admite el
desarrollo de estos hosts por parte de terceros.
Por ejemplo, ASP.NET hospeda el motor en tiempo de ejecucin para proporcionar un
entorno de servidor escalable para el cdigo administrado. ASP.NET trabaja
directamente con el motor en tiempo de ejecucin para habilitar aplicaciones de
ASP.NET y servicios Web XML, que se tratan ms adelante en este tema.
Internet Explorer es un ejemplo de aplicacin no administrada que hospeda el motor en
tiempo de ejecucin (en forma de una extensin de tipo MIME). Al usar Internet
Explorer para hospedar el motor en tiempo de ejecucin, puede incrustar componentes
administrados o controles de Windows Forms en documentos HTML. Al hospedar el
runtime se hace posible el uso de cdigo mvil administrado, pero con mejoras
significativas que solo el cdigo administrado puede ofrecer, como la ejecucin con
confianza parcial y el almacenamiento aislado de archivos.
En la ilustracin siguiente se muestra la relacin de Common Language Runtime y la
biblioteca de clases con las aplicaciones y el sistema en su conjunto. En la ilustracin se
representa igualmente cmo funciona el cdigo administrado dentro de una arquitectura
mayor.

.NET Framework en contexto

Вам также может понравиться