You are on page 1of 10

FACULTAD DE INGENIERIA DE SISTEMAS

(ACV-S06) Semana 06 – Tema 01: Tarea - Tarea Académica 1

Curso: PROGRAMACION ORIENTADA A OBJETOS

Docente: CASTRO GOMEZ MARLON JUNIOR

Estudiantes: JORGE CHAVEZ ANGELES

LIMA - PERU 2022


I. INTRODUCCIÓN

La persistencia de datos se refiere a los datos residuales que quedan de un archivo


luego de que se han hecho intentos para eliminarlo o borrarlo. Estos residuos pueden
ser causados por el proceso de eliminación llevado por el sistema operativo que deja
los datos intactos, por el formateo de medios de almacenamiento que no elimina los
datos previamente existentes en el medios, o debido a las características físicas del
medio de almacenamiento que permiten recuperar datos previamente escritos.

La persistencia de datos puede permitir la recuperación de la información y la puede


dejar expuesta si no se hace un correcto manejo del dispositivo y se libera en un
entorno no controlado, por ejemplo si se pierde, se arroja a la basura o se deja en
manos de terceros.

Muchos sistemas operativos, gestores de archivos y otro software proporcionan


métodos de borrado en los que un archivo no se elimina inmediatamente cuando el
usuario solicita esa acción. En su lugar, el archivo se mueve a un área de
almacenamiento temporal, denominado usualmente “Papelera de reciclaje”, lo que
facilita al usuario deshacer un error.

Del mismo modo, muchos productos de software crean automáticamente copias de


seguridad de los archivos que se están editando, para permitir al usuario restaurar la
versión original o recuperarse de un posible fallo, característica denominada
usualmente “Autosave” (“Autoguardado”).

En algunos sistemas, por diversos motivos también se dejan atrás suficientes


metadatos del sistema de archivos como para permitir una fácil recuperación de
archivos mediante utilidades de software. Incluso cuando la recuperación es imposible,
los datos, hasta que se han sobrescrito, pueden ser leídos por un software que lea los
sectores del disco directamente. La informática forense emplea a menudo tal software.

Del mismo modo, reformatear o reparticionar un sistema es poco probable que


sobrescriba todas las áreas del disco, aunque parezca que el disco está vacío. Lo
mismo ocurre en caso de efectuar una copia imagen de otro soporte de datos, aunque
el medio aparezca vacío excepto los archivos presentes en la imagen, muchos datos
no habrán sido sobrescritos.

Se han desarrollado diversas técnicas para contrarrestar la persistencia de datos y


minimizar los riesgos de exposición de la información, tales como sobrescribir,
desmagnetizar, cifrar y destruir los medios.

 Sobrescritura: Un método comúnmente utilizado para contrarrestar la


persistencia de datos es sobrescribir los medios de almacenamiento con
nuevos datos. Debido a que este método puede implementarse a menudo
exclusivamente en base a software, y puede ser capaz de seleccionar
selectivamente sólo una parte del medio, es una opción popular y de bajo costo
para algunas aplicaciones.
 Desmagnetización: La desmagnetización es la eliminación o reducción del
campo magnético de un disco o unidad, utilizando un dispositivo denominado
desmagnetizador, diseñado para el medio que se va a borrar. Aplicada a
medios magnéticos, la desmagnetización puede purgar todo un medio de forma
rápida y eficaz.
 Encriptación: El cifrado de datos al almacenarlos puede mitigar las
preocupaciones sobre la persistencia de datos. Si la clave de cifrado es fuerte y
está cuidadosamente controlada, el cifrado puede conseguir de manera
efectiva que cualquier información almacenada en el medio sea irrecuperable.
Si la clave está almacenada en el medio, puede resultar más fácil o más rápido
sobrescribir sólo la clave, frente a sobrescribir todo el disco. El cifrado se puede
hacer archivo por archivo, o en el disco entero.
 Destrucción física: La destrucción física de los medios de almacenamiento es
la forma más segura de contrarrestar la persistencia de datos. Sin embargo, el
proceso es generalmente largo, engorroso y puede requerir métodos
extremadamente complejos, ya que incluso un fragmento pequeño del medio
puede contener grandes cantidades de datos. Las técnicas específicas de
destrucción incluyen deshacer físicamente el medio (por ejemplo, por
trituración), alterar químicamente el medio (por ejemplo, mediante incineración
o exposición a productos químicos cáusticos o corrosivos) o exponer el medio
a campos electromagnéticos que exceden en gran medida las especificaciones
(por ejemplo, corriente eléctrica de alto voltaje o radiación de microondas de
alta amplitud), entre otros.
II. DESARROLLO

Clases persistentes
Las clases persistentes son clases en una aplicación que implementan
las entidades del problema empresarial (por ejemplo, Customer y Order
en una aplicación de comercio electrónico). No se considera que todas
las instancias de una clase persistente estén en estado persistente. Por
ejemplo, una instancia puede ser transitoria o separada.
Funcionalidades de las clases persistentes
 Proporcionar una propiedad identificadora o id, que relaciona la llave
principal con la tablade la base de datos. Esta propiedad mapea a la
columna de la llave principal de la tabla de la base de datos.
 Se puede implementar herencia, equals() y hascode().
 Soporta modelos dinámicos, usando mapeos en tiempo de ejecución.
 Declarar métodos de acceso y de modificación para los campos
persistentes, se puede implementar interfaces donde se declaren
métodos públicos.
a. Python
Python es una herramienta en la cual brinda un soporte en
programación orientada a objetos, imperativa y funcional, aplicando un
lenguaje de programación se pueden crear aplicaciones nativas e
híbridas, y cuenta con una sintaxis accesible para las personas con un
nivel de 'alfabetización' básico en lenguajes de programación.
Clase Persistente
Una clase persistente en Python es similar a una clase normal o básica,
con la diferencia que se debe aplicar cuatro reglas esenciales, de lo
cual son la siguientes:
 Implementación de un constructor sin argumentos, no público.
 Una propiedad identificadora o en otras palabras un id
 Clases no finales, aunque estas van a depender mucho de la
declaración de los métodos públicos, también vendría a ser opcional.
 Declaración de métodos(Opcional)
Ventajas y Desventajas
A diferencia de otros lenguajes de programación Python es practico
tanto en la hora de la elaboración de la clase, debido a que solo
requiere una estructura básica, los atributos, el constructor, métodos, la
declaración de métodos vendría a ser opcional.
C CHART

"C#" es un lenguaje de programación multiparadigma desarrollado y estandarizado


por la empresa Microsoft como parte de su plataforma .NET, que después fue
aprobado como un estándar por la ECMA (ECMA-334) e ISO (ISO/IEC 23270). C# es
uno de los lenguajes de programación diseñados para la infraestructura de lenguaje
común.

Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la


plataforma .NET, similar al de Java, aunque incluye mejoras derivadas de otros
lenguajes.

Aunque C# forma parte de la plataforma .NET, esta es una API, mientras que C# es un


lenguaje de programación independiente diseñado para generar programas sobre
dicha plataforma. Ya existe un compilador implementado que provee el
marco Mono - DotGNU, el cual genera programas para distintas plataformas
como Windows Microsoft, Unix, Android, iOS, Windows Phone, Mac OS y GNU/Linux.

Clase persistente

Una clase persistente en C# abarca las mismas funciones que en Python solo
tomando el detalle de que se implementaría los atributos, declaración de los get y set y
finalmente implementación del constructor en dicha clase. Además, se debe tomar en
cuenta que estas clases en este lenguaje de programación viene a aplicar las cuatro
reglas esenciales ya mencionadas anteriormente:

 Implementación de un constructor sin argumentos, esto en base de ser un


constructor predeterminado en cual puede ser no público.

 Una propiedad identificadora o en otras palabras un id, esto vendría a ser opcional,
aunque no afecte las clases.

 Clases no finales, aunque estas van a depender mucho de la declaración de los


métodos públicos, también vendría a ser opcional.

 Declaración de métodos, también vendría a ser opcional.


b. Scala

Scala es un lenguaje de programación multi-paradigma diseñado para


expresar patrones comunes de programación en forma concisa,
elegante y con tipos seguros. Integra sutilmente características de
lenguajes funcionales y orientados a objetos. La implementación actual
se ejecuta en la máquina virtual de Java y es compatible con las
aplicaciones Java existentes.Integra fácilmente características de
lenguajes orientados a objetos y funcionales. Este lenguaje es
puramente orientado a objetos en el sentido de que todo es un objeto.
Clase persistente
se define como una clase con atributos básicos, en el cual serán declarados y
posteriormente llamados por un objeto, en el cual invocará los parámetros los
imprimirá. Además, también este lenguaje de programación viene a respetar
los cuatro puntos para una clase persistente:
 Implementación de un constructor sin argumentos, esto en base de ser un
constructor predeterminado en cual puede ser no público.
 Una propiedad identificadora o en otras palabras un id, esto vendría a ser
opcional, aunque no afecte las clases.
 Clases no finales, aunque estas van a depender mucho de la declaración de
los métodos públicos, también vendría a ser opcional.
 Declaración de métodos, también vendría a ser opcional. Ventajas y
Desventajas Las ventajas que se presentan pueden ser las siguientes; poder
utilizar cualquier método como operador infijo "% d manzanas". El formato
(num) y el formato "% d manzanas" son equivalentes. Los operadores
aritméticos como + y << se tratan como cualquier otro método, ya que se
permite que los nombres de las funciones consistan en una secuencia de
símbolos arbitrarios. Los métodos de aplicación y actualización tienen formas
cortas. Foo () donde foo es valor (objeto singleton o instancia de clase).

III. CONCLUSIONES

En conclusión, con los tres lenguajes de programación que se pudo investigar,


las clases persistentes tanto en los tres lenguajes de programación comparte
cuatro reglas importantes en las que Implementación de un constructor sin
argumentos, esto en base de ser un constructor predeterminado en cual
puede ser no público. Una propiedad identificadora o en otras palabras un id,
esto vendría a ser opcional, aunque no afecte las clases. Clases no finales,
aunque estas van a depender mucho de la declaración de los métodos
públicos, también vendría a ser opcional. Declaración de métodos, también
vendría a ser opcional.
IV. REFERENCIA
González, A. H., & Cárdenas, S. A. (2001). Capa persistente de clases para el
almacenamiento de objetos. Ingeniería Industrial, 22(3), 10. Esplà-Gomis, M.,
& Suárez Cueto, A. (2020). Hibernate para Object/Relational Mapping (ORM).
Bases de Dades. Soto Orduño, J. C. (2019). Marco de servicios para la
construcción de POJOS y DAOs a partir de archivos SQL para diversos
manejadores de BDs. Hernández, A., Álvarez, S. (2000). CAPA PERSISTENTE DE
CLASES PARA EL ALMACENAMIENTO DE OBJETOS, Informática, Vol. (1), 58 –
61. https://dialnet.unirioja.es/descarga/articulo/4786775.pdf Capítulo 4.
Clases persistentes. (n.d.). HIBERNATE.
https://docs.jboss.org/hibernate/orm/3.5/reference/es-ES/html/persistent-
classes.html

You might also like