Copia superficial

Autor: Lewis Jackson
Fecha De Creación: 8 Mayo 2021
Fecha De Actualización: 25 Junio 2024
Anonim
Tema_3. Sección 3.6. Copia superficial/copia profunda
Video: Tema_3. Sección 3.6. Copia superficial/copia profunda

Contenido

Definición - ¿Qué significa Shallow Copy?

La copia superficial, en C #, es el proceso de crear un clon de un objeto instanciando una nueva instancia del mismo tipo que el objeto original y copiando los miembros no estáticos del objeto existente en el clon. Los miembros del tipo de valor se copian poco a poco, mientras que los miembros del tipo de referencia se copian de manera que el objeto referido y su clon se refieran al mismo objeto.


En general, se utiliza una copia superficial cuando el rendimiento es uno de los requisitos junto con la condición de que el objeto no se mutará en toda la aplicación. Al pasar el clon que contiene datos inmutables, se elimina la posibilidad de corrupción por cualquier código. Se encuentra que la copia superficial es eficiente cuando las referencias a objetos permiten que los objetos pasen por la dirección de memoria para que no sea necesario copiar todo el objeto.

La copia superficial también se conoce como copia de miembro.

Una introducción a Microsoft Azure y la nube de Microsoft | A lo largo de esta guía, aprenderá de qué se trata la computación en la nube y cómo Microsoft Azure puede ayudarlo a migrar y administrar su negocio desde la nube.

Techopedia explica Shallow Copy

La copia superficial es similar a la copia profunda en la asignación de cada miembro de un objeto a la de otro objeto, pero difiere en la forma en que se copia el campo de tipo de referencia. A diferencia de la copia superficial donde solo se copia la referencia, en la copia profunda, se crea una nueva copia del objeto referido.


Por ejemplo, considere un objeto de empleado que contiene detalles de información personal, incluida una lista de objetos de dirección que almacenan varias direcciones de empleados. Al realizar una copia superficial de un objeto empleado, se puede crear un clon del objeto empleado con referencias a la misma lista de objetos de dirección que son propiedad del objeto empleado original.

Los métodos para realizar una copia superficial incluyen:
  • Llame al método MemberwiseClone del objeto
  • Cree un clon manualmente a través de un método personalizado que es tedioso pero fácil de controlar
  • Use una técnica de reflexión que proporcione una instalación automatizada para realizar copias superficiales, pero con una sobrecarga de rendimiento
  • Use un método de serialización que sea más lento que el reflejo pero automatizado y simple
La copia superficial no se puede utilizar cuando el objeto tiene miembros de tipo de referencia que se modifican con frecuencia. Esta definición fue escrita en la estafa de C #