Clases Persistentes Con Python, C# y Scala Ta1
Clases Persistentes Con Python, C# y Scala Ta1
Clases Persistentes Con Python, C# y Scala Ta1
Tarea Académica 1:
Clases persistentes con Python, C# y Scala
AUTORES
Docente
Curso:
Programación Orientada a Objetos
1
Ciudad de Lima - Perú
2022
Clases persistentes con Python, C# y Scala
I. Introducción
memoria hasta que posteriormente recuperemos los mismos. Sin el uso de clases
persistentes los programas serían mucho más pesados tanto para el desarrollador
como para el usuario final dada su lenta implementación de datos. Podemos inferir
II. Desarrollo
a. Clases persistentes.
Cabe aclarar que esto no implica que todas las instancias de una clase
2
Llamamos capa persistente al lugar donde se encuentran las clases y
pueden recuperar los datos. Las clases persistentes que creemos dentro de
existencia fuera de una clase, lo que hará que se conserve con el paso del
tiempo.
Python cuenta con procesos los cuales permiten la realización de este, entre el
uso, por lo cual los programadores de Python hacen mayor uso de “pickle”.
diferencia del anterior pickle que serializa en binario. JSON puede ser legible
3
operar en lenguajes distintos a Python, a diferencia de los dos mencionados
anteriormente.
Así como cada uno de ellos permite la serialización mediante sus módulos,
proceso invertido.
creado en el año 2000. Este lenguaje nació con todas las herramientas que
contaban sus principales rivales de esa época; C++ y Java. Nació como un
lenguaje orientado objetos, que en ese momento estaba en auge, como una de
siendo, ya que esta forma de trabajo nos permite reutilizar grandes cantidades
primera versión, se parecía mucho a Java. De hecho, se creó con el fin de ser
4
lenguaje de C# admite los conceptos de encapsulación, herencia y
Clase en C#
Una clase es un molde del que luego se pueden crear múltiples objetos, con
sola unidad. Una clase proporciona una definición para instancias de la clase,
polimorfismo, mecanismos por los que las clases derivadas pueden extender
C#:
En Scala, las clases son plantillas estáticas que pueden ser instanciadas por
5
class Point (xc: Int, yc: Int) {
var x: Int = xc
var y: Int = yc
x = x + dx
y = y + dy
6
Para instanciar una clase es necesario usar la primitiva new, como se muestra
en el siguiente ejemplo:
object Classes {
println(pt)
pt.move(10, 10)
println(pt)
El programa define una aplicación ejecutable a través del método main del
en pt. Note que valores definidos con la signatura val son distintos de los
definidos con var (véase la clase Point arriba) ya que los primeros (val) no
(1, 2)
(11, 12)
HEREDA LA SCALA
7
Scala heredan de una clase base con Java es muy similar, pero hay que
e. Ejemplos de prácticos.
import json
import pickle
datos['personas'].append(maria)
datos['personas'].append(jorge)
8
datos['personas'].append(pedro)
json.dump(datos, f)
print()
datos_personas = json.load(f)
for p in datos_personas['personas']:
print()
print()
pickle.dump(datos, f, protocol=pickle.HIGHEST_PROTOCOL)
datos_deserializados = pickle.load(f)
print(type(datos_deserializados))
print(datos_deserializados)
9
for p in datos_deserializados['personas']:
print()
10
Ejemplo en C#:
11
Clases Persistentes en C#
12
Con respecto a C#, la persistencia es aquel que se puede guardar en la memoria secundaria
la computadora como un disco o memoria donde los códigos programados permanezcan más
allá de la ejecución del programa. Para guardar una clase usando persistencia se debe
Ejemplo:
using System;
using System.Collections.Generic;
using Systen.Linq;
using System.Text;
namespace ObjetosPersistentes
[Serializable]
class Persona
public Persona()
Nombre =””;
Edad = 0;
this.Edad = Edad;
13
}
return Nombre;
return Edad;
var x: Int = xc
var y: Int = yc
x = x + dx
y = y + dy
class Location(override val xc: Int, override val yc: Int, val zc :Int)
var z: Int = zc
14
x = x + dx
y = y + dy
z = z + dz
El uso de palabras clave Scala se extiende a heredar una clase. Ubicación instancias clase
hereda la clase Point. Punto llama la clase padre (clase base), la ubicación se llama una
subclase.
Todas las propiedades y métodos heredan heredará la clase padre, Scala sólo permite
import java.io._
var x: Int = xc
var y: Int = yc
x = x + dx
y = y + dy
15
println ("x : " + x);
class Location(override val xc: Int, override val yc: Int, val zc :Int)
var z: Int = zc
x = x + dx
y = y + dy
z = z + dz
object Test {
16
Aplicación del código anterior, la salida es:
$ scalac Test.scala
$ scala Test
x: 20
y: 30
z: 20
class Person {
fred.name = "Fred"
fred.salary = 50000
println(fred)
$ scalac Test.scala
17
$ scala Test
Employee[name=Fred][salary=50000.0]
III. CONCLUSIONES
A modo de conclusión, las clases persistentes nos brindan una gran ventaja al
momento del desarrollo para todos aquellos que vemos a la programación como una
profesión, ya que abstrae el proceso del uso de datos implicando una gran reducción
los objetos.
recuperar datos sin escribir una sola línea de código SQL. Por lo tanto, el uso de la
18
cuando el proveedor esté soportado) sin tener que modificar el código de la
aplicación.
IV. REFERENCIA
https://docs.jboss.org/hibernate/core/3.5/reference/es-ES/html/persistent-classes.html
https://profesorezequielruizgarcia.files.wordpress.com/2013/08/c-sharp-para-
estudiantes.pdf
https://docs.python.org/es/3/contents.html
https://www.researchgate.net/publication/312577212_CAPA_PERSISTENTE_DE_
CLASES_PARA_EL_ALMACENAMIENTO_DE_OBJETOS
https://docs.scala-lang.org/es/tour/classes.html
19
w3big. (29 de junio del 2022). Clases y objetos Scala.
http://www.w3big.com/es/scala/scala-classes-objects.html
20