Sei sulla pagina 1di 6

Investigación y análisis de términos

David Quilodrán Cruces

PROGRAMACIÓN .NET I

Instituto IACC

16 de Septiembre, 2019.
Desarrollo

De acuerdo al siguiente código, responda a continuación:

a)

Public Class Generico(Of t)


Public Sub NuevoElemento(ByVal Item As t)
Dim tItem As t
...
End Sub
End Class
...
Public ClaseEntero As New Generico (Of Integer)
Friend ClaseString As New Generico (Of String)

1. Identifique y describa los tipos de variables presentes.

Respuesta: De acuerdo al código entregado, se identifican y describen los siguientes tipos de

variables:

Public Class Generico(Of t)….: Es un método genérico, que está definido con al menos un

parámetro de tipo. Esto permite que el código de llamada adapte los tipos de datos a sus

requisitos cada vez que llama al procedimiento. Muestra una definición de esqueleto de una

clase genérica, dónde t es un parámetro de tipo, es decir, un marcador de posición para un

tipo de datos que se proporciona cuando se declara la clase. En otro lugar del código, puede

declarar distintas versiones de la Clase Publica llamada Generico proporcionando diversos

tipos de datos de t.

A continuación muestra el aspecto del procedimiento “NuevoElemento” en t. y

posteriormente se define una variable privada de nombre “tItem” para luego insertar el

código que procesa el elemento de tipo de datos t.

Public Sub NuevoElemento(ByVal Item As t)


Dim tItem As t
...
End Sub
Finalmente, Public ClaseEntero As New Generico (Of Integer) y Friend ClaseString As

New Generico (Of String) muestra dos declaraciones de este tipo. Las instrucciones

anteriores declaran clases construidas, en las que un tipo específico reemplaza el parámetro

de tipo. Este reemplazo se propaga por todo el código en la clase construida.

2. Describa cuáles son los tipos genéricos.

Respuesta: Antes de describir, mencionar que los tipos genéricos permiten tipos que

almacenan datos de distintos tipos sin perder funcionalidad y sin la sobrecarga de realizar

conversiones al recuperar un elemento. La ventaja de que los tipos de datos genéricos formen

parte del propio .NET Framework es que se pueden usar con cualquiera de los lenguajes

de .NET, entre ellos Visual Basic.

Un tipo genérico sirve como base para declarar varios elementos de programación diferentes,

cada uno de los cuales actúa en un tipo de datos específico. Las alternativas a un tipo

genérico son: Un tipo único que actúe en el tipo de datos Object y segundo como un conjunto

de versiones del tipo específicas del tipo , cada una de las cuales esté codificada por separado

y actúe en un tipo de datos concreto, como String, Integer o un tipo definido por el usuario,

como customer.

Los tipos genéricos introducen y usan las siguientes condiciones:

 Tipo genérico: en el código presentado primero se define la clase con la palabra clave

Class y tiene como nombre Generico, Posee una estructura e interiormente del código un

procedimiento (“NuevoElemento”) o delegado para la que proporciona un tipo de datos.

 Parámetro de tipo. En una definición de tipo genérico, marcador de posición para un tipo

de datos que proporciona al declarar el tipo, en este caso t.


 Argumento de tipo. Tipo de datos específico que reemplaza un parámetro de tipo cuando

declara un tipo construido a partir de un tipo genérico.

 Restricción. Condición en un parámetro de tipo que restringe el argumento de tipo puede

proporcionar para este. Una restricción puede requerir que el argumento de tipo

implemente una interfaz determinada, sea de una clase concreta o se herede de esta, tenga

un constructor sin parámetros accesible o sea un tipo de referencia o un tipo de valor.

Puede combinar estas restricciones, pero puede especificar una clase como máximo.

 Tipo construido. Clase, estructura, interfaz, procedimiento o delegado que se declara a

partir de un tipo genérico proporcionando argumentos de tipo para sus parámetros de

tipo. En este caso, las instrucciones Public ClaseEntero As New Generico (Of Integer) y

Friend ClaseString As New Generico (Of String) son declaraciones de clases construidas.

3. Indique si se definieron genéricos de delegados, y justifique su respuesta.

Respuesta: En el código presentado se observa que no hay definición de genéricos de

delegados, ya que los delegados son objetos que hacen referencia a métodos. A veces se

describen como punteros de función con seguridad de tipos porque son similares a los

punteros de función utilizados en otros lenguajes de programación. Pero a diferencia de los

punteros de función, los delegados de Visual Basic son un tipo de referencia basado en la

clase System.Delegate. Los delegados pueden hacer referencia a los métodos compartidos,

métodos a los que se puede llamar sin una instancia específica de una clase, y a los métodos

de instancia. Para asociar un método a un delegado y, a continuación, invocar ese método a

través del delegado, se deben realizar los siguientes pasos:


1. Crear un delegado con la instrucción Delegate (Sub o Function)

2. Declarar una clase que contenga un método con la misma firma que el delegado.

3. Definir un método que cree una instancia del delegado e invoque el método asociado

al delegado.

Según el siguiente código, responda a continuación:

b)

Dim variableLong As Long = 50

Dim variableEntero As Integer

4. Genere la conversión de tipos de la variable declarada como Long a la variable

declarada como Integer.

Respuesta: La conversión sería de la siguiente manera:

variableEntero = Cint(variableLong)

Explicit: este operador determina la conversión de restricción entre los tipos. En este caso, la

variable variableEntero se convierte a la variable número mediante la función o TypeConvert

CInt.
Bibliografía

IACC (2016). Fundamentos de programación en .NET. Programación .NET - I. Semana 4.

Microsoft (2015). Tipos genéricos en Visual Basic (Visual Basic). Recuperado de:

https://docs.microsoft.com/es-es/dotnet/visual-basic/programming-guide/language-

features/data-types/generic-types

Microsoft (2015). Delegados (Visual Basic). Recuperado de: https://docs.microsoft.com/es-

es/dotnet/visual-basic/programming-guide/language-features/delegates/

Microsoft (2015). Procedimiento Invocar un método delegado (Visual Basic). Recuperado de:

https://docs.microsoft.com/es-es/dotnet/visual-basic/programming-guide/language-

features/delegates/how-to-invoke-a-delegate-method

Potrebbero piacerti anche