Sunteți pe pagina 1din 5

PLATAFORMA .NET.

Arquitectura bsica de la plataforma .Net. Descripcin del Framework y sus principales


componentes: Lenguaes! biblioteca de clases y "L#.
La nue$a tecnolog%a de &icrosoft ofrece soluciones a los problemas de programacin
actuales! como son la administracin de cdigo o la programacin para 'nternet. (ara
apro$ec)ar al m*imo las caracter%sticas de .Net es necesario entender la arquitectura
bsica en la que esta implementada esta tecnolog%a y as% beneficiarse de todas las
caracter%sticas que ofrece esta nue$a plataforma.
+l Framework de .Net es una infraestructura sobre la que se re,ne todo un conunto de
lenguaes y ser$icios que simplifican enormemente el desarrollo de aplicaciones. &ediante
esta )erramienta se ofrece un entorno de eecucin altamente distribuido! que permite crear
aplicaciones robustas y escalables. Los principales componentes de este entorno son:
Lenguaes de compilacin
-iblioteca de clases de .Net
"L# ."ommon Language #untime/
Actualmente! el Framework de .Net es una plataforma no incluida en los diferentes
sistemas operati$os distribuidos por &icrosoft! por lo que es necesaria su instalacin pre$ia
a la eecucin de programas creados mediante .Net. +l Framework se puede descargar
gratuitamente desde la web oficial de &icrosoft .$er link de descarga en los recursos del
final/.
.Net Framework soporta m,ltiples lenguaes de programacin y aunque cada lenguae tiene
sus caracter%sticas propias! es posible desarrollar cualquier tipo de aplicacin con cualquiera
de estos lenguaes. +*isten ms de 01 lenguaes adaptados a .Net! desde los ms conocidos
como "2 ." 3)arp/! 4isual -asic o "55 )asta otros lenguaes menos conocidos como (erl
o "obol.
Caractersticas
+s el encargado de pro$eer lo que se llama cdigo administrado! es decir! un entorno que
pro$ee ser$icios automticos al cdigo que se eecuta. Los ser$icios son $ariados:
"argador de clases: permite cargar en memoria las clases.
"ompilador &3'L a nati$o: transforma cdigo intermedio de alto ni$el
independiente del )ardware que lo eecuta a cdigo de mquina propio del
dispositi$o que lo eecuta.
Administrador de cdigo: coordina toda la operacin de los distintos subsistemas
del "ommon Language #untime.
#ecolector de basura: elimina de memoria obetos no utili6ados.
&otor de seguridad: administra la seguridad del cdigo que se eecuta.
&otor de depuracin: permite )acer un seguimiento de la eecucin del cdigo aun
cuando se utilicen lenguaes distintos.
4erificador de tipos: controla que las $ariables de la aplicacin usen el rea de
memoria que tienen asignado.
Administrador de e*cepciones: manea los errores que se producen durante la
eecucin del cdigo.
3oporte de multiproceso .)ilos/: permite eecutar todo el cdigo en forma paralela.
+mpaquetador de "7&: coordina la comunicacin con los componentes "7& para
que puedan ser usados por el .N+8 Framework.
3oporte de la -iblioteca de "lases -ase: interfa6 con las clases base del .N+8
Framework. +sto quiere decir que e*isten tipos de estructuras como es la de a$a y
la .N+8
Consideraciones
La plataforma .N+8 de &icrosoft es un componente de software que puede ser a9adido al
sistema operati$o :indows. (ro$ee un e*tenso conunto de soluciones predefinidas para
necesidades generales de la programacin de aplicaciones! y administra la eecucin de los
programas escritos espec%ficamente con la plataforma. +sta solucin es el producto
principal en la oferta de &icrosoft! y pretende ser utili6ada por la mayor%a de las
aplicaciones creadas para la plataforma :indows.
.N+8 Framework se incluye en :indows 3er$er ;11<! :indows 4ista y :indows =. De
igual manera! la $ersin actual de dic)o componente puede ser instalada en :indows >(! y
en la familia de sistemas operati$os :indows 3er$er ;110. ?na $ersin @reducida@ de
.N+8 Framework est disponible para la plataforma :indows &obile! incluyendo telAfonos
inteligentes.
La norma .incluido en +"&AB00C! '37D'+" ;0;=E/ que define el conunto de funciones
que debe implementar la biblioteca de clases base .-"L por sus siglas en inglAs! tal $e6 el
ms importante de los componentes de la plataforma/! define un conunto funcional m%nimo
que debe implementarse para que el marco de trabao sea soportado por un sistema
operati$o. Aunque &icrosoft implement esta norma para su sistema operati$o :indows!
la publicacin de la norma abre la posibilidad de que sea implementada para cualquier otro
sistema operati$o e*istente o futuro! permitiendo que las aplicaciones corran sobre la
plataforma independientemente del sistema operati$o para el cual )aya sido implementada.
+l (royecto &ono emprendido por >imian pretende reali6ar la implementacin de la norma
para $arios sistemas operati$os adicionales bao el marco del cdigo abierto.
Common Language Runtime (CLR)
+l "L# es el $erdadero n,cleo del Framework de .Net! ya que es el entorno de eecucin en
el que se cargan las aplicaciones desarrolladas en los distintos lenguaes! ampliando el
conunto de ser$icios que ofrece el sistema operati$o estndar :in0;.
La )erramienta de desarrollo compila el cdigo fuente de cualquiera de los lenguaes
soportados por .Net en un mismo cdigo! denominado cdigo intermedio .&3'L! &icrosoft
'ntermediate Lenguae/. (ara generar dic)o cdigo el compilador se basa en el "ommon
Language 3pecification ."L3/ que determina las reglas necesarias para crear cdigo &3'L
compatible con el "L#.
De esta forma! indistintamente de la )erramienta de desarrollo utili6ada y del lenguae
elegido! el cdigo generado es siempre el mismo! ya que el &3'L es el ,nico lenguae que
entiende directamente el "L#. +ste cdigo es transparente al desarrollo de la aplicacin ya
que lo genera automticamente el compilador.
3in embargo! el cdigo generado en &3'L no es cdigo mquina y por tanto no puede
eecutarse directamente. 3e necesita un segundo paso en el que una )erramienta
denominada compilador F'8 .FustB'nB8ime/ genera el cdigo mquina real que se eecuta en
la plataforma que tenga la computadora.
De esta forma se consigue con .Net cierta independencia de la plataforma! ya que cada
plataforma puede tener su compilador F'8 y crear su propio cdigo mquina a partir del
cdigo &3'L.
La compilacin F'8 la reali6a el "L# a medida que se in$ocan los mAtodos en el programa
y! el cdigo eecutable obtenido! se almacena en la memoria cac)A de la computadora!
siendo recompilado slo cuando se produce alg,n cambio en el cdigo fuente.
Bibioteca de cases de .Net
"uando se est programando una aplicacin muc)as $eces se necesitan reali6ar acciones
como manipulacin de arc)i$os! acceso a datos! conocer el estado del sistema! implementar
seguridad! etc. +l Framework organi6a toda la funcionalidad del sistema operati$o en un
espacio de nombres errquico de forma que a la )ora de programar resulta bastante sencillo
encontrar lo que se necesita.
(ara ello! el Framework posee un sistema de tipos uni$ersal! denominado "ommon 8ype
3ystem ."83/. +ste sistema permite que el programador pueda interactuar los tipos que se
incluyen en el propio Framework .biblioteca de clases de .Net/ con los creados por Al
mismo .clases/. De esta forma se apro$ec)an las $entaas propias de la programacin
orientada a obetos! como la )erencia de clases predefinidas para crear nue$as clases! o el
polimorfismo de clases para modificar o ampliar funcionalidades de clases ya e*istentes.
La biblioteca de clases de .Net Framework incluye! entre otros! tres componentes cla$e:
A3(.N+8 para construir aplicaciones y ser$icios :eb.
:indows Forms para desarrollar interfaces de usuario.
AD7.N+8 para conectar las aplicaciones a bases de datos.
La forma de organi6ar la biblioteca de clases de .Net dentro del cdigo es a tra$As de los
espacios de nombres .namespaces/! donde cada clase est organi6ada en espacios de
nombres seg,n su funcionalidad. (or eemplo! para manear fic)eros se utili6a el espacio de
nombres 3ystem.'7 y si lo que se quiere es obtener informacin de una fuente de datos se
utili6ar el espacio de nombres 3ystem.Data.
La principal $entaa de los espacios de nombres de .Net es que de esta forma se tiene toda
la bliblioteca de clases de .Net centrali6ada bao el mismo espacio de nombres .3ystem/.
Adems! desde cualquier lenguae se usa la misma sinta*is de in$ocacin! ya que a todos
los lenguaes se aplica la misma biblioteca de clases.
Ensambados
?no de los mayores problemas de las aplicaciones actuales es que en muc)os casos tienen
que tratar con diferentes arc)i$os binarios .DLLGs/! elementos de registro! conecti$idad
abierta a bases de datos .7D-"/! etc.
(ara solucionarlo el Framework de .Net manea un nue$o concepto denominado
ensamblado. Los ensamblados son fic)eros con forma de +>+ o DLL que contienen toda la
funcionalidad de la aplicacin de forma encapsulada. (or tanto la solucin al problema
puede ser tan fcil como copiar todos los ensamblados en el directorio de la aplicacin.
"on los ensamblados ya no es necesario registrar los componentes de la aplicacin. +sto se
debe a que los ensamblados almacenan dentro de si mismos toda la informacin necesaria
en lo que se denomina el manifiesto del ensamblado. +l manifiesto recoge todos los
mAtodos y propiedades en forma de metaBdatos unto con otra informacin descripti$a!
como permisos! dependencias! etc.
(ara gestionar el uso que )acen la aplicaciones de los ensamblados .Net utili6a la llamada
cac)A global de ensamblados .HA"! Hlobal Assembly "ac)e/. As%! .Net Framework puede
albergar en el HA" los ensamblados que puedan ser usados por $arias aplicaciones e
incluso distintas $ersiones de un mismo ensamblado! algo que no era posible con el anterior
modelo "7&.