Tarea2 Poo

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 10

lOMoARcPSD|6653269

Tarea Académica 1 - clases persistentes python, scala, c#

CALCULO APLICADO A LA FISICA 2 (Universidad Tecnológica del Perú)

Studocu no está patrocinado ni avalado por ningún colegio o universidad.


Descargado por Tomas Mejia (mejiatomas185@gmail.com)
lOMoARcPSD|6653269

Clases persistentes con Python, C# y Scala

I. INTRODUCCIÓN

En la presente tarea académica se explicará la aplicación de la persistencia a través de clases


persistentes en los programas siguientes: C#, Python y Scala. Detallando que se llama persistencia a
la capacidad de un objeto para existir fuera de un programa, proceso, función o hilo de control; de
manera que se conserva su estado y su comportamiento. Esto quiere decir que la persistencia hace
que la información de un programa sea capaz de guardarse para volver a utilizarse en otro momento.
Es lo que los usuarios conocen como Guardar el archivo y después Abrir el archivo.
Para la programación puede significar más cosas y suele involucrar un proceso de serialización de
los datos a un archivo o a una base de datos o a algún otro medio similar, y el proceso inverso de
recuperar los datos a partir de la información serializada.

II. DESARROLLO

a. CLASES PERSISTENTES
La capa de persistencia está formada por un conjunto de clases y componentes responsables del
almacenamiento y recuperación de datos, a y desde una o más fuentes de datos. Esta capa,
necesariamente incluye un modelo de las entidades del modelo del negocio.
Las clases persistentes, por lo tanto, son clases situadas en la capa de persistencia que implementan
las entidades del negocio del problema. El término clase persistente no implica que una clase es
persistente. Es más, significa que los objetos de esa clase y su estado son gestionados por el servicio
de persistencia.

b- APLICACIÓN DE CLASES PERSISTENTES USANDO EL LENGUAJE DE


PROGRAMACIÓN C#.
C# o C Sharp es un lenguaje de programación creado por Microsoft. Fue 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
las herramientas más poderosas de desarrollo de software y aún lo sigues siendo, ya que esta
forma de trabajo nos permite reutilizar grandes cantidades de códigos así pudiendo crear nuestras
propias herramientas a través de las famosas clases.
C# tiene sus orígenes en la familia de lenguajes C y su primera versión, se parecía mucho a Java. De
hecho, se creó con el fin de ser una alternativa viable en este en Windows. Muchas de sus
características fueron evolucionando y mejorando hasta llegar a la versión actual. Ahora el lenguaje
de C# admite los conceptos de encapsulación, herencia y

Descargado por Tomas Mejia (mejiatomas185@gmail.com)


lOMoARcPSD|6653269

polimorfismo y facilita el desarrollo de componentes de software mediante varias construcciones de


lenguaje innovadoras.
Clase en C#
Una clase es un molde del que luego se pueden crear múltiples objetos, con similares características.
Una clase es una estructura de datos que combina estados (campos) y acciones (métodos y otros
miembros de función) en una sola unidad. Una clase proporciona una definición para instancias de la
clase, también conocidas como objetos. Las clases admiten herencia y polimorfismo, mecanismos
por los que las clases derivadas pueden extender y especializar clases base.
Sintaxis de una clase en C#:

class [nombre de la clase] {


[atributos o variables de la clase]
[métodos o funciones de la clase]
[main]
}

Ejemplo:
class Cliente
{
private string nombre;
private int monto;

public Cliente(string nom)


{
nombre = nom;
monto = 0;
}

public void Depositar(int m)


{
monto = monto + m;
}

public void Extraer(int m)


{
monto = monto - m;
}

public int RetornarMonto()


{
return monto;
}

public void Imprimir()


{
Console.WriteLine(nombre + " tiene depositado la suma de " + monto);
}
}

Clases Persistentes en C#

Descargado por Tomas Mejia (mejiatomas185@gmail.com)


lOMoARcPSD|6653269

Con respect 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 etiquetar usando [Serializable] antes de la clase.

Ejemplo:
using System;
using System.Collections.Generic;
using Systen.Linq;
using System.Text;
namespace ObjetosPersistentes
{
[Serializable]
class Persona
{
private string Nombre;
private int Edad;
public Persona()
{
Nombre =””;
Edad = 0;
public void SetNombre (string Nombre) {
this. Nombre =Nombre;
}
public void SetEdad (int Edad) {
this.Edad = Edad;
}
public string GetNombre () {
return Nombre;
}
public int GetEdad () {
return Edad;
}
}
c. CLASES PERSISTENTES EN PYTHON

Descargado por Tomas Mejia (mejiatomas185@gmail.com)


lOMoARcPSD|6653269

Python:
Es un lenguaje de programación creado por Guido van Rossum a principios de los años
90. Se trata de un lenguaje interpretado o de script, con tipado dinámico, fuertemente tipado,
multiplataforma y orientado a objetos.
Un lenguaje interpretado o de script es aquel que se ejecuta utilizando un programa intermedio
llamado intérprete, en lugar de compilar el código a lenguaje máquina que pueda comprender y
ejecutar directamente una computadora (lenguajes compilados).
Python tiene muchas de las características de los lenguajes compilados, por lo que se podría decir
que es semi interpretado, esto quiere decir que el código fuente se traduce a un pseudo código
máquina intermedio llamado bytecode la primera vez que se ejecuta, generando archivos .pyc o. pyo
que son los que se ejecutarán en sucesivas ocasiones.

“La sintaxis de Python es tan sencilla y cercana al lenguaje natural que los programas
elaborados en Python parecen pseudocódigo. Por este motivo se trata además de uno de los
mejores lenguajes para comenzar a programar. ” Gonzales (2011) p. 8

Clases en Python
Una clase en Python es una plantilla a partir de la cual se instancian los objetos, y define que
atributos y métodos tendrán los objetos de esa clase.
Se definen usando la palabra clave class, seguido del nombre de la clase y dos puntos (:) Ejemplo:

class Humano(): //Creamos la clase Humano


def init (self, edad, nombre): //Definimos el atributo edad y nombre
self.edad = edad // Definimos que el atributo edad, sera la edad asignada
self.nombre = nombre // Definimos que el atributo nombre, sera el nombre
asignado
Persona1 = Humano(31, "Pedro") //Instancia

Clase persistente en Python:


La persistencia es la acción de conservar la información un objeto de forma permanente, pero
también de recuperarla.
Una clase persistente en Python es similar a una clase normal o básica.
Cuando un programa termina su ejecución, el estado de los objetos que contenía es eliminado. Sin
embargo, existen varias formas de permitir que el estado de un objeto persista.
Python cuenta con el módulo pickle, el cual es capaz de guardar el estado de un objeto en un archivo.
Ejemplo:
import pickle

d = {'var1':'desperados','var2':'coronita'}

Descargado por Tomas Mejia (mejiatomas185@gmail.com)


lOMoARcPSD|6653269

//Abrimos el archivo donde almacenaremos el resultado de la


serialización
with open('file.data', 'w') as fh: //Almacenamos el diccionario en el
fichero con dump()
pickle.dump(d, fh)
fh.close()
//Con load leemos el contenido almacenado en el archivo donde
almacenamos la información.
with pickle.load(open('file.data', 'r')) as spd:
print spd

También existe otra forma de hacer persistente una clase en Python, la cual es usando la es con la
librería Shelve. Esta librería trabaja sobre pickle y permite almacenar objetos como un diccionario.
Siendo muy útil cuando queremos guardar muchos objetos y posteriormente acceder solo a algunos
de ellos.
import shelve

d = {'var1':'desperados'}
d2 = {'var2':'coronita'} //Escribimos los datos asociándoles una llave

with shelve.open(‘file.data’, ‘c’) as shelf:


shelf[“uno”] = d
shelf[“dos”] = d1 // Leemos los datos y los mostramos

with shelve.open('file.data', 'r') as shelf: for


key in shelf.keys():
print(repr(shelf[key])))

d. APLICACIÓN DE CLASES PERSISTENTES USANDO EL LENGUAJE DE


PROGRAMACIÓN SCALA.
Scala es un lenguaje de programación qué es multiparadigma, es decir, que implementa a la vez
varios paradigmas de programación. Está basado en Java, pero es más conciso, porque no se tendrá
que escribir demasiado en este lenguaje.
También es un lenguaje orientado a objetos donde podemos encontrar lo tradicional en POO, como
clases, paquetes, módulos, polimorfismo, herencia, etc. Y a la vez, funcional ya que, trata a las
funciones como ciudadanos de primera clase. Soporta funciones anónimas lambdas, patrones, etc.

Clases en Scala.
Una clase en Scala es una plantilla definida por el programador a partir del cual se crean objetos
combinando los campos y métodos en una sola unidad. En una clase se usa un constructor para
inicializar nuevos objetos, los campos son variables que proporcionan el estado de la clase y sus
objetos, y se usan métodos para implementar el comportamiento de la clase y sus objetos. Las
clases en Scala no se declaran como públicas y puede haber varias clases en un archivo fuente de
Scala.
Por ejemplo
// Un programa de Scala para mostrar en pantalla
// Como crear una clase

// Nombre de la clase es Smartphone


class Smartphone

Descargado por Tomas Mejia (mejiatomas185@gmail.com)


lOMoARcPSD|6653269

// Class variables var


number: Int = 24
var nomEmp: String = "Samsung"

def Display()
{
println("Nombre de la empresa : " + nomEmp); println("Total
de modelos lanzados: " + number);
}
}
object Main
{

// Main method
def main(args: Array[String])
{

// Class object
var obj = new Smartphone();
obj.Display();
}
}

Lo que ejecuta esta clase es:


Nombre de la empresa: Apple
Total de modelos lanzados: 24

Clases persistentes en Scala:


Una clase persistente en Scala se define como una clase con atributos básicos, en el cual serán
declarados y para luego ser llamados por un objeto.
Los atributos no son privatizados debido a que se puede acceder con mucha facilidad.
El lenguaje de programación Scala promueve el uso de estructuras de datos persistentes para
implementar programas usando "Estilo funcional de objetos". Scala contiene implementaciones de
muchas estructuras de datos persistentes, incluidas Listas enlazadas, árboles rojo-negro, así como
intentos mapeados de matriz hash persistentes.

Ejemplo:
class Persona( var nombre:String, var edad:Int); object
Program{
def main(args: Array[String]){
var Persona=new Persona("Alvaro",25);
println(Persona.nombre);
println(Persona.edad);
}

Descargado por Tomas Mejia (mejiatomas185@gmail.com)


lOMoARcPSD|6653269

e. CONCLUSIONES

• En términos muy simples, una capa de persistencia es una forma de GUARDAR y


RECUPERAR elementos que utiliza la aplicación.
• También se usa para aquel objeto que se crea y luego sea guardado en la base de datos.
• La persistencia permite al programador almacenar, transferir y recuperar el estado de los
objetos
• Para que una clase sea persistente se debe seguir cierto tipo de pasos dependiendo del
software usado.
• Un programa puede grabar objetos persistentes y luego recuperarlos en un tiempo posterior.

f. BIBLIOGRAFÍAS

Gonzáles, R. (2011b). Python para Todos [Libro electrónico]. Creative


Commons Reconocimiento 2.5 España.
Bell, D., & Parr, M. (2010). C# Para Estudiantes. Pearson. Recuperado de
https://profesorezequielruizgarcia.files.wordpress.com/2013/08/c-sharp-para-
estudiantes.pdf
Quintana, R. E. (2021, 28 abril). ¿Por qué Scala? Blog de Programación. Recuperado de

https://rodobarcaaa.github.io/es/post/scala-intro/

CLASES PERSISTENTES CON BASE DE DATOS EN PYTHON

Lo primero que debemos hacer es crear una conexión a la base de datos utilizando el método de
conexión. Después de eso, se necesitará un cursor que operará con esa conexión.

Se utiliza el método de ejecución del cursor para interactuar con la base de datos y, de vez en
cuando, confirme los cambios utilizando el método de confirmación del objeto de conexión.

Una vez hecho todo, se cierra el cursor y la conexión.

Ejemplo de clase Dbconnect:

import MySQLdb

class Dbconnect(object):

Descargado por Tomas Mejia (mejiatomas185@gmail.com)


lOMoARcPSD|6653269

def __init__(self):

self.dbconection = MySQLdb.connect(host='host_example',
port=int('port_example'),
user='user_example',
passwd='pass_example',
db='schema_example')
self.dbcursor = self.dbconection.cursor()

def commit_db(self):
self.dbconection.commit(
)

def close_db(self):
self.dbcursor.close()

Interactuar con la base de datos es simple. Después de crear el objeto, simplemente use el método
de ejecución.

db = Dbconnect()
db.dbcursor.execute('SELECT * FROM %s' % 'table_example')
Para llamar a un procedimiento almacenado, use la siguiente sintaxis:

db = Dbconnect()
db.callproc('stored_procedure_name', [parameters] )
Una vez que se realiza la consulta, puede acceder a los resultados de varias maneras. El objeto del
cursor es un generador que puede obtener todos los resultados o ser enlazado.

results = db.dbcursor.fetchall()
for individual_row in results:
first_field = individual_row[0]
Para confirmar los cambios en la base de datos:

db.commit_db()

Si quieres cerrar el cursor y la conexión:

db.close_db()

CLASES PERSISTENTES CON BASE DE DATOS EN C#

Se puede aplicar generando de forma automática las sentencias SQL para la inserción,
modificación, borrado, y recuperación de datos. Para ello se utiliza un fichero XML en el que se
establece una correspondencia directa entre las clases y latabla que le corresponde en la base de

Descargado por Tomas Mejia (mejiatomas185@gmail.com)


lOMoARcPSD|6653269

datos. Así mismo, se establece una correspondencia entre cada atributo persistente de la clase
y el campo que le corresponde en la tabla.

La capa de persistencia encapsula completamente el acceso a datos de las aplicaciones siendo


posible trabajar con varios gestores de datos sin necesidad de cambiar el código.

Descargado por Tomas Mejia (mejiatomas185@gmail.com)

También podría gustarte