You are on page 1of 5

En función de los contenidos de la Semana 7, responda lo siguiente

:
Discuta qué ventajas y desventajas tiene el paso de parámetros por valor o
por referencia. Dé ejemplos en cada intervención. Tenga especial cuidado
en no repetir los ejemplos de sus compañeros(as).Fundamente su respuesta.

Buenos noches,

Respondiendo a la interrogante puedo decir

Beneficios de pasar por valor

Si estamos construyendo aplicaciones multi-hilos, entonces no tenemos que preocuparnos de
que los objetos sean modificados por otros hilos.

Desventajas, permite evitar inadvertidamente la destrucción de las variables pasadas como
parámetros. Si uno quiere advertir de la destrucción accidental de los parámetros pasados por
variable, El compilador prohibirá entonces cualquier modificación de la variable en la función
llamada.

Ventajas de pasar por referencia:

 No hay copia del argumento hecho, por lo tanto, es rápido.
 Para evitar cambios involuntarios, podemos incluso hacer que pase por referencia
constante.
 Podemos devolver múltiples valores de una función.

Pasar parámetros por referencia constante para funciones con requisitos de solo lectura ayuda
a mantener la legibilidad, asegurando un fuerte contrato de tiempo de compilación y
permitiendo la flexibilidad de llamar a una función con un valor constante de tiempo de
compilación.

Desventajas (todo con respecto a los parámetros pasados por referencia)

 Legibilidad. Una persona que lee el código no tiene forma de saber que el valor puede
modificarse en la función.
 Pasar por referencia hace que la función no sea puramente teórica y en muchos casos
prácticamente. Las funciones puras tienen los beneficios de ser altamente
paralelizadas, más comprobables y menos propensas a errores en general.
 La garantía de por vida es un gran problema con las referencias (y también con los
indicadores). Esto se vuelve especialmente peligroso cuando se trata de programas
lambdas y multiproceso.

Saludos,

Patricio Astorga Vega

} Cuando xxx()vuelve. . para de esta manera modificar el contenido de la variable. ya que Java también pasa referencias de objetos por valor. Pasos por referencia El paso por referencia en vez de mandar el valor de la variable. int var2 ) { int temp = var1 . las variables pasadas como argumentos aún mantendrán sus valores originales. var2 = temperatura . var1 = var2 . es una variable local y que recibe una copia del valor de la variable a. int a=5. } La variable c. El método también fallará si cambiamos el tipo de argumentos de inta Object. metodo(a): void metodo(int c) { System.println(c). void funcion(int &a) { a = 10. Ejemplo 2 Se utiliza cuándo se requiere pasar el valor de una variable a una función y que está realize alguna operación sobre ese Valor. es decir se pasa el parámetro por valor. la función o método crea una Variable Local y trabaja sobre ella. Sin embargo este tipo de paso de parámetros en Java no existe pero si lo quisiéramos hacer en C++ sería algo así: include <iostream> using namespace std. Parámetros por valor Ejemplo 1 public void xxx ( int var1 .Buenos noches.out. se manda la dirección de memoria en la que se encuentra almacenada. } int main() { int var = 5.

Patricio Astorga Vega Conclusión Aunque los principios fundamentales.funcion(&var). Patricio Astorga https://www.wordpress. Aunque esta regla puede ser una restricción estricta. cout <<> } El resultado de la ejecución sería.com/What-are-the-pros-and-cons-of-passing-by-reference https://fabiantapia. A diferencia de otros lenguajes de programación (como C ++). su simplicidad y la comprensión de cómo aplicar esta simplicidad.com/2010/12/11/parametros-por-referencia-vs-por-valor/ . estos conceptos son esenciales para evitar errores sutiles. Saludos. Java simplifica el enlace de datos y el esquema de aprobación en una sola regla: los datos siempre se pasan por valor. 10 ya que la variable 10 se pasa por referencia y la función modifica su valor. pueden parecer abstractos en el ámbito de la programación diaria.quora. como los esquemas de enlace de datos y los esquemas de paso de datos. puede ser un activo importante al realizar una gran cantidad de tareas diarias Saludos.

. Y los métodos con valor de retorno con parámetros. tipo3 r. Ejemplo Métodos con valor de retorno con parámetros tipo nombreMetodo(tipo1 p. tipo: Es el tipo del valor de retorno. Donde: variable: Es la variable que recibe el valor retornado por el método. Invocación (llamado): variable = nombreMetodo(). Están son sus diferencia: Los métodos con valor de retorno sin parámetros son aquellos donde este tipo de métodos no reciben datos de entrada. Ejemplo Métodos con valor de retorno sin parámetros Su definición es de la siguiente manera: tipo nombreMetodo(){ Declaracion de variables locales Cuerpo del método return valor. tipo2 q.  Métodos con valor de retorno con parámetros. Buenos días. son aquellos métodos que reciben datos de entrada por medio de parámetros y retornan un resultado al punto de su llamado.. Este tipo de métodos se utiliza para operar cualquier tipo de proceso que produzca un resultado. responda lo siguiente: Discuta acerca de las diferencias en retornar un valor en el nombre de un método o en un parámetro. Los métodos con valor de retorno son módulos de programa que pueden recibir datos de entrada por medio de variables locales (parámetros) y posteriormente retorna un resultado al punto donde es llamado. } Donde: valor: Es el valor que es retornado por el método. Los métodos con valor de retorno se clasifican en dos tipos:  Métodos con valor de retorno sin parámetros. pero de igual forma retornan un resultado al punto donde son llamados..Foro 2 En función de los contenidos de la Semana 7. .){ .

.html Buenas tardes. : son los tipos de datos de los parámetros. Patricio Astorga http://inprojava.blogspot. tipo2. tipo1. Declaración de variables locales Cuerpo del método return valor.cl/2009/10/metodos-con-valor-de-retorno. q. r. valor: es el valor de retorno. ... Saludos.. : son los nombres de los parámetros. Saludos. } Donde: tipo: Es el tipo de valor de retorno. Patricio Astorga . . p. tipo3.