sábado, 20 de septiembre de 2014

Sentencia if

Ejecuta condicionalmente un grupo de instrucciones en función del valor de una expresión.Utiliza la evaluación de cortocircuito para devolver condicionalmente uno de dos valores. Ejemplo:

' Multiple-line syntax:
If condition [ Then ]
    [ statements ]
[ ElseIf elseifcondition [ Then ]
    [ elseifstatements ] ]
[ Else
    [ elsestatements ] ]
End If

' Single-line syntax:
If condition Then [ statements ] [ Else [ elsestatements ] ]
Otro ejemplo:
If Num1 > num2 Then resultado = "Numero 1 es mayor que Num 2"


Cuando se llama a If utilizando tres argumentos, el primer argumento se debe evaluar en un valor que se pueda convertir en Boolean. Ese valor Boolean determinará cuál de los otros dos argumentos se evalúa y devuelve.La lista siguiente sólo se aplica cuando se llama al operador If utilizando tres argumentos.

Termino 1: argument1: Obligatorio. Boolean . Determina cuál de los otros argumentos se va a evaluar y devolver.
Termino 2: argument2: Obligatorio. Object . Se evalúa y devuelve si argument1 se evalúa en True.
Termino 3: argument3: Obligatorio. Object . Evalúa y volver si argument1 se evalúa como False o si argument1 es una variable de Valores NULLBoolean que evalúa nada.

jueves, 18 de septiembre de 2014

El entorno de trabajo

Visual Studio .NET es un conjunto completo de herramientas de desarrollo para la construcción de aplicaciones Web ASP, servicios Web XML, aplicaciones para escritorio y aplicaciones móviles. Visual Basic .NET, Visual C++ .NET, Visual C# .NET y Visual J# .NET utilizan el mismo entorno de desarrollo integrado (IDE), que les permite compartir herramientas y facilita la creación de soluciones en varios lenguajes. Asimismo, dichos lenguajes aprovechan las funciones de .NET Framework, que ofrece acceso a tecnologías clave para simplificar el desarrollo de aplicaciones Web ASP y servicios Web XML.

Eventos (Principales Eventos)

Principales Eventos
*Activated: Se produce cuando el formulario se activa por código de programa o por parte del usuario.
*AutoSizeChanged: Se produce cuando cambia la Propiedad.
*AutoValidateChangedSe produce cuando cambia la propiedad AutoValidate.
*BackColorChanged: Se produce cuando cambia el valor de la propiedad BackColor. (Se hereda de Control).
*BackgroundImageChanged: Se produce cuando cambia el valor de la propiedad BackgroundImage. (Se hereda de Control).
*BackgroundImageLayoutChangedSe produce cuando cambia la propiedad BackgroundImageLayout. (Se hereda de Control).
*BindingContextChangedSe produce cuando cambia el valor de la propiedad BindingContext. (Se hereda de Control).
*CausesValidationChangedSe produce cuando cambia el valor de la propiedad CausesValidation. (Se hereda de Control).
*ChangedUICuesTiene lugar cuando cambia el foco o los indicadores de interfaz de usuario de teclado. (Se hereda de Control).
*ClickSe produce cuando se hace clic en el control. (Se hereda de Control).
*ClientSizeChangedSe produce cuando cambia el valor de la propiedad ClientSize(Se hereda de Control).
*ClosedTiene lugar cuando el formulario está cerrado.
*ClosingTiene lugar cuando se cierra el formulario.
*ContextMenuChangedSe produce cuando cambia el valor de la propiedad ContextMenu. (Se hereda de Control).
*ContextMenuStripChangedSe produce cuando cambia el valor de la propiedad ContextMenuStrip(Se hereda de Control).
*ControlAddedSe produce cuando se agrega un nuevo control a Control.ControlCollection. (Se hereda de Control).
*ControlRemovedSe produce cuando se quita un control de Control.ControlCollection. (Se hereda de Control).
*CursorChanged: Se produce cuando cambia el valor de la propiedad Cursor. (Se hereda de Control).
*DeactivatedSe produce cuando el formulario pierde el foco y deja de ser el formulario activo.
*DoubleClickSe produce cuando se hace doble clic en el control. (Se hereda de Control).
*EnterSe produce cuando se entra en el control. (Se hereda de Control).

Controles. Dibujar los controles en el formulario (principales controles) y sus principales propiedas

CONTROLES PRINCIPALES Y SUS PRINCIPALES PROPIEDADES
*Puntero: Representa la imagen que se utiliza para dibujar el
puntero del mouse.
*Backgroundworker: Ejecuta una operación en un subproceso independiente
*Button: Representa un control de botón de Windows.
*CheckBox: Representa un control CheckBox de Windows.
*CheckedListBox: Muestra un objeto ListBox en el que se muestra una
casilla a la izquierda de cada elemento.
*Label: Representa una etiqueta estándar de Windows.
*ImageList: Proporciona métodos para administrar una colección de objetos Imagen
*BindingNavigator: Representa la interfaz de usuario de navegación y
manipulación para los controles de un formulario que
están enlazados a datos.
*BindingSource: Encapsula el origen de datos de un formulario.
*ColorDialog: Representa un cuadro de diálogo común que muestra los
colores disponibles, así como los controles que permiten
a los usuarios definir colores personalizados.
*ComboBox: Representa un control de cuadro combinado de
Windows.
*ContextMenuStrip: Representa un menú contextual.
*DataSet: Representa una memoria caché de datos en memoria.
*DateTimePicker: Representa un control de Windows que permite al
usuario seleccionar una fecha y una hora, y mostrarlas
con un formato especificado.
*DirectoryEntry: Encapsula un nodo u objeto en la jerarquía de Servicios
de dominio de Active Directory.
*DirectorySearcher: Realiza consultas en los Servicios de dominio de Active
Directory.
*DomainUpDown: Representa un cuadro de número de Windows (también
conocido como control de flechas) que muestra los
valores de cadena.
*ErrorProvider: Proporciona una interfaz de usuario para indicar que un
control de un formulario tiene un error asociado.
*EventLog: Proporciona interacción con registros de eventos de Windows.

El entorno de trabajo de los Formularios

Puesto que los formularios son la unidad básica de una aplicación, es importante realizar algunas consideraciones sobre su función y su diseño. Un formulario es, en última instancia, una hoja en blanco que el desarrollador rellena con controles, para crear una interfaz de usuario, y con código, para procesar los datos. Para ese fin, Visual Studio proporciona un entorno de desarrollo integrado que ayuda a escribir el código, así como un completo conjunto de controles escrito con .NET Framework. La funcionalidad de estos controles se complementa con el código escrito por el desarrollador, lo que permite desarrollar fácil y rápidamente las soluciones deseadas.

Operadores y Expresiones

Expresiones:
Una expresión es una combinación de operadores y operandos. Los datos u
operandos pueden ser constantes, variables y llamadas a funciones. Además, dentro de una
expresión pueden encontrarse subexpresiones encerradas entre paréntesis. Cuando se ejecuta una sentencia de código que contiene una expresión, ésta se evalúa. Al evaluarse la expresión toma un valor que depende del valor asignado previamente a las variables, las constantes y los operadores y funciones utilizadas y la secuencia de la ejecución de las operaciones correspondientes. Este valor resultante de la evaluación de la expresión será de un determinado tipo de dato. Por ejemplo, de un tipo numérico entero (integer, shortint…), de un tipo real o de un tipo lógico o booleano.


Operadores:
En el código fuente de un programa un operador es un carácter o una secuencia de
caracteres. Por ejemplo: +, *, div o shr. Los operadores definen las operaciones que van a
realizarse con los datos u operandos. En TurboPascal existen distintos tipos de operadores.
Por un lado, pueden clasificarse, dependiendo del número de operandos, en unarios o
unitarios (un operando) y binarios (dos operandos). Por otro lado, pueden clasificarse,
dependiendo del tipo de operandos y de su resultado, en operadores aritméticos, de cadenas
de caracteres, de relación, lógicos o booleanos, de bit y de conjuntos. Algunos operadores están sobrecargados, lo que significa que la operación que representan depende del número o tipos de operandos sobre los que actúa. De esta forma, por ejemplo el operador + puede hacer referencia a la suma de valores numéricos, a la concatenación de caracteres o a la unión de conjuntos dependiendo del tipo de sus operandos.

El operador de asignación:
El operador de asignación se representa por la secuencia de caracteres := . Permite

asignar a una variable el valor de una expresión. Por ejemplo:
var x,y,z: real;
begin
x:=12.5;
y:=-5.7;
z:=2*x+3*y;

El operador aritmético:
Los operadores aritméticos operan sobre valores de tipo entero o real.y son los siguientes:
-          Operador unitario de cambio de signo
+         Suma
-          Resta
*         Producto
/          División real
div      Cociente entero (Solo permite operandos enteros)
mod    Resto de la división entera (Solo permite operandos enteros)

Estos realizan operaciones muy simples.

Operador de relación:
Los operadores de relación son operadores binarios en los que los operandos son
ordinales, reales o de cadena. Los dos primeros operadores sirven también para operandos de

tipo record y punteros. Todos ellos dan lugar a resultados de tipo booleano.
Son los siguientes:
=           Igual que
< >        Distinto que
<           Menor que
>           Mayor que
<=         Menor o igual que
>=         Mayor o igual que
No hay que confundir el operador lógico igualdad =, con el operador de asignación
:=, que asigna valores a variables o funciones. La expresión a=b compara los valores
almacenados en la variables a y b y devuelve true o false según el resultado, mientras
que la sentencia a:=b; asigna a la variable a el valor almacenado en la variable b.

Operadores Lógicos o Booleanos:
Los operadores lógicos o boolenos realizan operaciones con operandos de tipo lógico

o booleano y tiene como resultado un dato también del mismo tipo. Son los siguientes:
not        Negación (unario)
or          Suma lógica (binario)
and       Producto Lógico (binario)
xor        Suma lógica exclusiva (binario)

Alcance de las variables

El alcance de una variable indica la parte del programa donde puede utilizarse. En base al alcance, las variables se clasifican en:
Variables locales
Variables de instancia

Cada una de las variables anteriores puede ser estática o no.

LAS VARIABLES LOCALES:

Se declaran dentro de métodos o de instrucciones asociadas a bucles for, estructuras condicionales, etc. Su alcance se restringe al código del método o de la instrucción. No admiten modificadores de acceso salvo "final" y deben estar inicializadas antes de ser empleadas. Por ejemplo:



VARIABLES DE DISTANCIA:

Se declaran después de la clase y fuera de cualquier método. Los valores que asumen para cada objeto constituyen el estado o conjunto de atributos del objeto. Su alcance es global, es decir, las pueden utilizar directamente todos lo métodos no estáticos de la clase. Para acceder desde el método main o desde cualquier otro método estático a una variable de instancia es necesario crear un objeto de la clase. Al hecho de crear un objeto de una clase se le conoce también como instanciar la clase. Si no se inicializan explícitamente, asumen el valor nulo por defecto, una vez  instanciada la clase.
IMPORTANTE: si las variables de instancia no se inicializan explícitamente bien mediante un objeto de la clase bien en la misma línea donde se declaran, qué ocurrirá?
Se mostrará el elemento nulo asociado a los valores iniciales de los diversos tipos de variables. Así, en las variables primitivas enteras (byte, short, int y long) dicho elemento nulo es 0, en las reales (float y double) es 0.0, en las booleanas es false y en las referenciadas (asociadas a objetos de clases) es null.

Por ejemplo:



Declaración de una variable


Para declarar una variable, basta con indicar su tipo y su nombre. Existen ciertas convenciones en cuanto al nombre de las variables. Algunos prefieren separar las partes  de un nombre con '_', otros prefieren escribir una mayúsculas para separarlas ejemplo:

int mesadaDelMes;
ó
int mesada_del _mes;

LO IMPORTANTE ES QUE UTILICES SIEMPRE LA MISMA CONVENCIÓN PARA TUS PROGRAMAS Y SIEMPRE TERMINA CON ;

Sintaxis:
<tipo> <lista de variables>;

Tipos de Datos Basicos y Variables en C++

En cualquier lenguaje de programación deben de aparecer estos tipos de datos: ENTERO, REAL, CARÁCTER. Para los ENTEROS usamos la palabra reservada int, para los REALES usamos la palabra reservada double y para los CARÁCTER usamos char.

Por lo tanto la sintaxis para declarar variables es la siguiente:
<TIPO DATO> nombreVariable [ = <VALOR> ];

Existen otros tipos de datos básicos en c++,  el BOOLEANO que toma los valores verdadero o falso (true o false), y su palabra reservada es bool.

Aquí les dejaremos una tabla con los tipos de datos, variables y los valores que pueden tomar:

Crear un nuevo proyecto

Cuando se crea un proyecto, automáticamente se genera una solución a menos que el proyecto ya forme parte de una.

Para crear un proyecto:
1.- En el menú Archivo, haga clic en Nuevo y, a continuación, haga clic en Proyecto. Se abre el cuadro de diálogo Nuevo proyecto.
2.-En el panel de la izquierda, seleccione Instalado y seleccione una categoría de tipos de proyecto en la lista expandida.
Si ha creado un proyecto del mismo tipo recientemente, seleccione Reciente para que la navegación sea más rápida.
3.-Seleccione una de las Plantillas de proyecto del panel central. Aparece una descripción de la plantilla seleccionada en el panel de la derecha.
4.-En el cuadro Nombre, escriba un nombre para el nuevo proyecto. *
5.-En el cuadro Ubicación, seleccione una ubicación para guardar. #
6.-Si está disponible, en la lista Solución, especifique si desea crear una solución o agregar el proyecto a la solución que está abierta en el Explorador de soluciones.
7.-En el cuadro Nombre de la solución, escriba un nombre para la solución.
Visual Studio usará ese nombre para el espacio de nombres del proyecto terminado, si fuera aplicable. De forma predeterminada, el nombre de la solución coincidirá con el nombre del proyecto.
8.-Asegúrese de que está activada la casilla Crear directorio para la solución.
9.-Haga clic en Aceptar.

Puede crear un proyecto que tenga como destino versiones anteriores de .NET Framework mediante el menú desplegable de versión .NET Framework que se encuentra en la parte superior del cuadro de diálogo Nuevo proyecto. Establezca este valor antes de seleccionar una plantilla de proyecto, dado que en la lista solo aparecerán plantillas compatibles con esa versión de .NET Framework. Para obtener acceso a versiones anteriores a la 4, debe tener instalado .NET Framework 3.5 en su sistema.

*En algunos tipos de proyectos, el cuadro Nombre no está disponible porque al especificar la ubicación se establece el nombre del proyecto. Por ejemplo, una aplicación web o un servicio Web XML se encuentra en un servidor web y su nombre procede del directorio virtual especificado en ese servidor.

#Si está creando un proyecto temporal, es posible que el cuadro Ubicación no esté disponible. Para obtener más información, vea Proyectos temporales.

¿Qué es un proyecto?

El proyecto es el punto de inicio para la creación de aplicaciones, componentes y servicios en Visual Studio.
El proyecto actúa como un contenedor que administra el código fuente, las conexiones de datos y las referencias. Un proyecto se organiza como parte de una solución, que puede contener múltiples proyectos dependientes entre sí. Los temas de esta sección describen las diferentes tareas relativas a la creación y la administración de proyectos de Visual Basic y Visual C#.


Administrar propiedades del proyecto con el Diseñador de proyectos
Proporciona información acerca de cómo tener acceso a las propiedades de un proyecto y cómo modificarlas.

Proyectos locales y proyectos web
Explica las diferencias importantes entre estos dos modelos de proyecto.

Propiedades de archivo
Describe configuraciones de propiedad que indican qué acciones debe ejecutar sobre los archivos el sistema del proyecto.

Plantillas de proyectos predeterminadas en Visual Studio
Proporciona una lista de los tipos de proyecto que se pueden crear mediante plantillas de proyecto.

Hacer referencia a espacios de nombres y componentes
Proporciona vínculos a temas sobre la adición, eliminación, corrección y administración de referencias del proyecto.

Convenciones de nomenclatura para archivos de recursos
Proporciona vínculos con información acerca de archivos de recursos del manifiesto del ensamblado XML y del que no es XML.

Configurar aplicaciones mediante propiedades dinámicas
Describe cómo configurar los proyectos para que algunas de las propiedades de éstos se almacenen en un archivo de configuración en lugar de en el código compilado.

Tipos de archivo y extensiones de archivo en Visual Basic y Visual C#
Enumera y describe las extensiones de nombre de archivo de todos los archivos disponibles en los proyectos de Visual Basic y Visual C#.

Administración de proyectos para usuarios de Visual Basic 6.0
Resume las diferencias de los proyectos de Visual Basic 2008 con relación a los proyectos de Visual Basic 6.0.

Compilador de Visual Basic
Proporciona las opciones de línea de comandos del compilador para Visual Basic.

Opciones del compilador de C#
Proporciona las opciones del compilador para Visual C#.

Cómo: Actualizar elementos en el Explorador de soluciones
Describe cómo incorporar en el proyecto cambios realizados por otros usuarios.

Cómo: Agregar nuevos elementos de proyecto
Proporciona instrucciones paso a paso para agregar nuevos elementos de proyecto.

Introducción a soluciones, proyectos y elementos
Proporciona información general acerca de las soluciones y los proyectos.

Proyectos de instalación e implementación
Recomienda sobre el tipo de proyecto de implementación que se debe utilizar para la aplicación o el componente.

Cómo: Quitar, eliminar y excluir elementos
Proporciona instrucciones para quitar, eliminar o excluir elementos en Visual Studio.

domingo, 14 de septiembre de 2014

Otros Paneles del IDE Visual Studio

1. Panel de Visual Studio que permite la visualización de controles:

Panel de Controles.
TooIBar.
**Cuadro de Heramientas.
Panel de Control.


2. Son productos de Visual Studio 2010:

Express, Premium, Professional y Ultimate.
Team foundation Server y Test Professional.
Team Explorer Everywhere.
**Todas las anteriores.
Ninguna de las anteriores.


3. Son lenguajes de Visual Studio 2010:

C# y C
F# y Jscript
Visual Basic
**Todas las anteriores.
Ninguna de las anteriores.


4. La version de Visual Studio que añade el soporte a instrucciones de 64 bits, es:

2003.
**2005.
2008.
201 0.


5. Las versiones de Visual Studio .NET son:

2002 y 2003.
2005 y 2008.
2010.

jueves, 11 de septiembre de 2014

Panel de propiedades

El panel de propiedades aparece en el área inferior central de la consola de Updates Publisher cuando se selecciona un nodo de <nombre de producto> en el panel del árbol de la consola y una actualización de software en el panel de resultados. El panel de propiedades contiene las fichas Detalles de actualización y Reglas de aplicación que proporcionan información de sólo lectura sobre la actualización.
El panel Propiedades consta de grupos de propiedades de objetos utilizados con frecuenia en IBM Lotus Symphony. Puede establecer propiedades para los objetos seleccionados fácilmente con el panel Propiedades.
El panel de propiedades se puede configurar para que se visualice o para que esté cerrada. También puede hacer que esté flotante o bien acoplarla arrastrando la barra del título.
El panel de propiedades se divide en varias secciones. Cada sección es un grupo de propiedades de un objeto. La disponibilidad de las secciones de propiedades en el panel de propiedades es sensible al contexto.

Explorador de soluciones

El Explorador de soluciones proporciona una vista organizada de los proyectos y sus archivos, así como acceso rápido a los comandos relativos a ellos. Normalmente, una barra de herramientas asociada a esta ventana ofrece los comandos que se utilizan con más frecuencia con el elemento resaltado en la lista. Para obtener acceso al Explorador de soluciones, seleccione Explorador de soluciones en el menú Ver.

¡¡¡¡IMPORTANTE!!!!
Las opciones disponibles en los cuadros de diálogo, y los nombres y las ubicaciones de los comandos de menú que se ven podrían diferir de lo que se describe en la Ayuda, en función de los valores de configuración o de edición activos.

Vista de árbol: 
Esta vista estándar del Explorador de Soluciones presenta la solución activa como un contenedor lógico de uno o más proyectos y de los elementos asociados a ellos. Puede abrir elementos de proyecto para modificarlos, además de llevar a cabo otras tareas de administración directamente desde esta vista. Dado que los distintos proyectos almacenan los elementos de manera diferente, la estructura de carpetas del Explorador de soluciones no refleja necesariamente el almacenamiento físico real de los elementos enumerados.
Cuando la opción Realizar seguimiento del elemento activo en el Explorador de soluciones está seleccionada en el General, Proyectos y soluciones, Opciones (Cuadro de diálogo), el Explorador de soluciones abre automáticamente la carpeta del elemento activo, se desplaza hasta su nodo en vista de árbol y selecciona su nombre. El elemento seleccionado va cambiando conforme se trabaja con los distintos archivos en un proyecto o solución o con los distintos componentes en un diseñador del entorno de desarrollo integrado (IDE). Cuando esta opción está desactivada, la selección en el Explorador de soluciones no cambia automáticamente.


Descripción del Entorno de Desarrollo IDE

Es un entorno de desarrollo integrado de programación que ah sido empaquetado como un programa de aplicación, es decir, consiste en un editor de código un compilador, un depurador y un constructor de interfaz gráfica (GUI).
Los IDE proveen un marco de trabajo amigable para la mayoria de los lenguajes de programación tales como C++, PHP, Python, Java, C#, Delphi, Visual Basic, etc. En alguno lenguajes, un IDE puede funcionar como un sistema en tiempo de ejecución en donde se permite utilizar el lenguaje de programacion en forma interactiva, sin necesidad en trabajo orientado a archivos de texto.


Algunos ejemplos de entornos integrados de desarrollo (IDE) son los siguientes: 
  • Eclipse
  • NetBeans
  • IntelliJ IDEA
  • JBuilder de Borland
  • JDeveloper de Oracle
  • KDevelop
  • Anjunta
  • Clarion
  • MS Visual Studio
  • Visual C++
Un IDE debe tener las siguientes características:
  • Multiplataforma
  • Soporte para diversos lenguajes de programación
  • Integración con Sistemas de Control de Versiones
  • Reconocimiento de Sintaxis
  • Extensiones y Componentes para el IDE
  • Integración con Framework populares
  • Depurador
  • Importar y Exportar proyectos
  • Múltiples idiomas
  • Manual de Usuarios y Ayuda

martes, 9 de septiembre de 2014

NameSpaces

La palabra clave NameSpace se utiliza para declarar un ámbito que contiene un conjunto de objetos relacionados. Puede utilizar un espacio de nombres para organizar elementos de código y crear tipos globales únicos.
C#
namespace SampleNamespace
{
    class SampleClass { }

    interface SampleInterface { }

    struct SampleStruct { }

    enum SampleEnum { a, b }

    delegate void SampleDelegate(int i);

    namespace SampleNamespace.Nested
    {
        class SampleClass2 { }
    }
}
Dentro de un espacio de nombres se pueden declarar uno o varios de los siguientes tipos:
*Otro espacio de nombres
*Class
*interface
*Struct
*Enum
*Delegate
Declare o no explícitamente un espacio de nombres en un archivo de código fuente de C#, el compilador agrega un espacio de nombres predeterminado. Este espacio de nombres sin denominación, a veces se hace referencia a él como espacio de nombres global, está presente en todos los archivos. Cualquier identificador del espacio de nombres global puede utilizarse también en un espacio de nombres declarado.
Los espacios de nombres disponen implícitamente de un acceso público que no puede modificarse. Para obtener una descripción de los modificadores de acceso que se pueden asignar a los elementos de un espacio de nombres, vea Modificadores de acceso (Referencia de C#).
Un espacio de nombres se puede definir en dos o más declaraciones. un ejemplo de ello es el siguiente:
namespace MyCompany.Proj1
{
    class MyClass
    {
    }
}

namespace MyCompany.Proj1
{
    class MyClass1
    {
    }
}

Microsoft Intermediate Language (MSIL)

Ninguno de los compiladores que generan código para la plataforma .NET produce código máquina para CPUs x86 ni para ningún otro tipo de CPU concreta, si no que generan código escrito en el lenguaje intermedio conocido como Microsoft Intermediate Lenguage (MSIL). El CLR da a las aplicaciones la sensación de que se están ejecutando sobre una maquina virtual, y precisamente MSIL es el código maquina de esa maquina virtual. Es decir, MSIL es el único código que es capaz de interpretar el CLR, y por tanto cuando se dice que un compilador genera código para la plataforma .NET lo que se esta diciendo es que genera MSIL.


Common Language Runtime (CLR)

Common Language Runtine (CLR), sirve como el motor de ejecución de NET Framework. Todos los programas NET ejecutan bajo la supervisión de CLR, garantizar determinadas propiedades y comportamientos en las áreas de gestión de la memoria, la seguridad y el manejo de excepciones.

Common Language Infrastructure (CLI), el proposito de la CLI es proporcionar una plataforma independiente del idioma para el desarrollo y ejecución de la aplicación, incluyendo funciones para el manejo de excepciones, recolección de basura, la seguridad y la interoperabilidad. Mediante la implementación de los aspectos centrales de NET Framwork en el ámbito de la CLI, esta en funcionalidad no estará atado a un solo idioma, pero estará disponible a través de los muchos idiomas admitidos por el marco. Implementación de Microsoft del CLI es CLR.

El Common Lenguage Specification (CLS), es un conjunto de reglas de la base de cualquier orientación por idioma de la CLI debe cumplir para poder interoperar con otros lenguajes compatibles con CLS. Las reglas de CLS definen un subconjunto del tipo de sistema Common.

NET Framework

NET Framework, es un marco de software desarrollado por Microsoft que se ejecuta principalmente en Microsoft windows. Incluye una gran biblioteca de clases conocido como Marco Class Library y proporciona interoperabilidad lenguaje en diversos lenguajes de programación. Los programas escritos para NET Framework se ejecutan en un software de medio ambiente conocido como Common Language Runtine.

SEGURIDAD...
NET tiene su propio mecanismo de seguridad con dos características generales: Código de Acceso de Seguridad (CAS), y la validación y verificación. CAS se basa en pruebas que se asocia con un conjunto específico. Normalmente la evidencia es la fuente de la asamblea (si está instalado en el equipo local o se ha descargado de la intranet o Internet). CAS utiliza pruebas para determinar los permisos concedidos al código. Otro código puede exigir que código de llamada se le concede un permiso especificado. La demanda hace que CLR para realizar un paseo pila de llamadas: todas las asambleas de cada método en la pila de llamadas está activada para el permiso necesario; si cualquier asamblea no se concede el permiso se emite una excepción de seguridad.