[.NET] Qué son los Generics y su implementación en C# (I).


Desde la versión 2.0 del .NET Framework tenemos soporte para Generics. Con Generics se pueden crear clases o métodos que son independientes de su tipo contenido. En vez de escribir métodos o clases con la misma funcionalidad para diferentes tipos, se puede crear únicamente un método o una clase para ello.

Otra opción para reducir nuestro código es el uso de la clase Object. Sin embargo el problema de emplear dicha clase es que no es type-safe, es decir no se hace comprobación de tipos. Las clases genéricas hacen uso de tipos genéricos que son reemplazados por tipos específicos cuando se requiera. Esto permite la comprobación de tipos durante la compilación.

Los generics no sólo se pueden usar en clases sino también se pueden emplear en métodos, interfaces, delegados, etc.

Algunas ventajas del empleo de Generics son:

  • Rendimiento.
  • Seguridad de tipos.
  • Reutilización de código.

Seguir leyendo

[.NET] Conociendo la plataforma .NET un poco más a fondo.


El Common Language Infrastructure (CLI)

El Common Language Infrastructure (CLI) es un estándar ECMA (especificación 335) que especifica la infraestructura de tiempo de ejecución necesaria para ejecutar el código administrado, para permitir que diferentes bibliotecas y lenguajes puedan trabajar juntos sin problemas. En el momento en que se inició el proyecto .NET en Microsoft a finales de los 90, estaba claro que la clave del éxito en el espacio de interoperabilidad entre lenguajes fue involucrar a grupos de diseñadores de lenguajes tanto dentro de la empresa como fuera de ella para asegurar la robustez del diseño. Como parte de esta iniciativa, Microsoft formó un equipo con Hewlett-Packard e Intel para trabajar en la estandarización de la CLI, que tuvo lugar en 2001.

Seguir leyendo

[.NET] Características clave y ventajas de la plataforma .NET Framework.


En este post, veremos cuáles son las características principales y qué ventajas tiene la plataforma Microsoft .NET Framework.

Programación Orientada a Objetos
Soporte para múltiples lenguajes
Fácil desarrollo basado en componentes
Simplifica el despliegue de las aplicaciones
Soporte para Biblioteca de Clases Base (Base Class Library)
Implementación de varios tipos de aplicaciones
Infraestructura de tiempo de ejecución unificada
Interoperabilidad con código existente
Modelo de seguridad mejorada
Soporte para comunicación con Servicios Web

Seguir leyendo

[.NET] Qué es un Reference Type.


¿Qué es un Reference Type?

Básicamente un Reference Type es aquel cuya variable almacena la dirección de memoria de sus datos en una zona de memoria denominada Stack. Los datos reales a los que hace referencia se encuentran en una zona de memoria llamada Heap.
Debido a que los reference types representan la dirección de los datos en lugar de los datos en sí mismo, asignar una variable de referencia a otra no copia los datos. En cambio, la asignación de una variable de reference type a otra instancia crea una segunda copia de la referencia, esto quiere decir que dos variables reference type pueden apuntar a los mismos datos.

Seguir leyendo