No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Parámetros de salida

11/35
Recursos

Los parámetros opcionales siempre deben ir al último de un método.
Un parámetro de salida se debe marcar con la palabra out, dentro de la función cada parámetro de salida debe ser asignado para funcionar y poder regresar un valor.

Aportes 17

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Los parametros de salida no son más que una sintaxis bonita para el paso por referencia en C ¿Verdad?

Sobrecarga de métodos: Definimos dos métodos con el mismo nombre pero con diferentes parámetros para diferentes funcionalidades.

Parámetros opcionales: Brindan un valor predeterminado a los parámetros lo que permite que sea opcional la asignacion de parametros al inicializar el método. Recordar que para luego asignar valores a parámetros opcionales se debe poner por ejemplo (nombredeparametro:false)

Tuplas return: Si necesitamos que nuestro método devuelva dos valores o mas en return podemos usar tuplas. Para definir el método lo definimos de tipo “ (int, string) “y para que nos devuelva el valor “ (variableentera, variablestring) ”

Parámetros de salida: Se definen entre los paréntesis de parámetros con la palabra clave out. Por ejemplo “(bool traeEvaluaciones, out int ConteoEvaluaciones)”

Asignaciones múltiples: Variable1 = Variable2 = Variabler3 = ValorQueQuieroAsignar

ya no es una lista, es una tupla, colección de dos valores

Un método puede devolver múltiples objetos utilizando Tuplas, ejem:

public (List<ObjetoEscuelaBase, int> GetObjetosEscuela){
...
}

Se puedem hacer asignaciones masivas de valores en una sola línea: conteoAlumnos = conteoCursos= conteoAsignaturas = conteoEvaluaciones =0; //Todas tendrán el valor 0

Gracias, no sabía que las tuplas se podían crear al “vuelo”, siempre usaba el tipo definido Tuple. Fue una muy buena clase.

Está bien conocer la existencia de los output parameteres, por si los encuentras en código de terceros al que estés dando mantenimiento, pero se debería aclarar que crearlos no es buena práctica, citando del libre código limpio de robert c martin (uncle bob) “Gran parte de la necesidad de usar parámetros de salida desapareció en los lenguajes orientados a objetos… en general los parámetros de salidas deberían ser evitados”, los parámetros en una función son naturalmente interpretado (por nosotros como programadores) como entradas, mientras se lee el código para poder entender que se trata de datos de salidas y no entradas, se necesita una doble verificación de parte del desarrollador, lo cual hace que la lectura del código no sea fluida, además de verse cargada de parámetros, no es código limpio.

Avoid output parameters

Parámetros de salida

Los parámetros opcionales siempre deben ir al último de un método.
Un parámetro de salida se debe marcar con la palabra out, dentro de la función cada parámetro de salida debe ser asignado para funcionar y poder regresar un valor.

Hola Juan Carlos, mi intención no es verme quejoso, serà por mi falta de experiencia desarrollando, lo que veo es que lo que va explicando difiere mucho de lo que venia haciendose hasta el estado del código en el video anterior, entonces me pierdo mucho, y no logro asimilar cómo quisiera todos los conceptos.

Parámetros Opcionales

Los parámetros opcionales nos permiten un valor predeterminado al parámetro, lo que permite que sea opcional la asignación de parámetros al iniciar el método.
Ejem: public ObtenerValor(bool estado = true){…}
Al momento de llamar al método se puede realizar de dos maneras:

  1. ObtenerValor( );
  2. ObtenerValor(estado: false );
    En la primera opción el valor por defecto es false y en la segunda es true.

Parámetros de Salida

Los parámetros de salida permiten que una herramienta devuelva un resultado, para declararlo se debe utilizar la palabra “out”.
Ejemplo: ObtenerValor(bool estado, out bool resultado );
Una condición que tienen los parámetros de salida es que deben “tener siempre un valor”

Asignaciones múltiples

Consiste en realizar la asignación de un valor a una serie de variables, ejemplo:
//Asignación múltiple
conteoEvaluaciones = conteoAsignaturas = conteoAlumnos = 0;

***Asignaciones múltiples.

Creeria que si tenemos que devolver muchos datos, es mejor devolveros en una estructura de datos.

En este caso para devolver parametros se emplear return o out en C#

Return: Statement terminates execution of the method in which it appears and returns control to the calling method.

Ejemplo de codigo

<public string obtenerRaza()
        {
            return "Domestica";
        }>

Muy bien

Que raro que no deje hacer la asignación multiple como en C, ejemplo:

conteoAl, conteoEval, conteoCursos, conteoAsig = 0;

Sobrecarga de métodos

Excelente contenido de las variables de salida

Sobrecarga de metodos.