Tutorial: Programación orientada a objetos en Python: PL/SQL con Python
Introducción
La programación orientada a objetos (POO) es un paradigma de programación que organiza el código en torno a objetos. Un objeto es una entidad que tiene estado y comportamiento. El estado de un objeto se representa mediante sus atributos, y su comportamiento se representa mediante sus métodos.
PL/SQL es un lenguaje de programación procedural que se utiliza para escribir código para bases de datos Oracle. Es un lenguaje potente que puede utilizarse para realizar una amplia gama de tareas, incluyendo el acceso a datos, la manipulación de datos y la creación de funciones y procedimientos.
En este tutorial, aprenderemos a utilizar la POO en Python para escribir código PL/SQL.
Creación de una clase PL/SQL
Para crear una clase PL/SQL, utilizamos la palabra clave class
. El siguiente código crea una clase llamada Persona
:
class Persona:
pass
Esta clase no tiene ningún atributo ni método.
Atributos de una clase PL/SQL
Los atributos de una clase PL/SQL se definen utilizando la palabra clave def
. El siguiente código define un atributo llamado nombre
para la clase Persona
:
class Persona:
nombre = None
Este atributo es de tipo None
, que es un tipo especial en Python que representa un valor desconocido.
Métodos de una clase PL/SQL
Los métodos de una clase PL/SQL se definen utilizando la palabra clave def
. El siguiente código define un método llamado saludar()
para la clase Persona
:
class Persona:
nombre = None
def saludar(self):
print("Hola, mi nombre es {}!".format(self.nombre))
Este método toma un parámetro llamado self
, que representa el objeto actual.
Creación de un objeto PL/SQL
Para crear un objeto PL/SQL, utilizamos el operador ()
. El siguiente código crea un objeto llamado persona
de la clase Persona
:
class Persona:
nombre = None
def saludar(self):
print("Hola, mi nombre es {}!".format(self.nombre))
persona = Persona()
Este objeto tiene un atributo nombre
que es None
.
Asignación de valores a los atributos de un objeto PL/SQL
Podemos asignar valores a los atributos de un objeto PL/SQL utilizando el operador =
. El siguiente código asigna el valor «Juan» al atributo nombre
del objeto persona
:
class Persona:
nombre = None
def saludar(self):
print("Hola, mi nombre es {}!".format(self.nombre))
persona = Persona()
persona.nombre = "Juan"
Ahora, el atributo nombre
del objeto persona
tiene el valor «Juan».
Invocación de métodos de un objeto PL/SQL
Podemos invocar métodos de un objeto PL/SQL utilizando el operador .
. El siguiente código invoca el método saludar()
del objeto persona
:
class Persona:
nombre = None
def saludar(self):
print("Hola, mi nombre es {}!".format(self.nombre))
persona = Persona()
persona.nombre = "Juan"
persona.saludar()
Este código imprime el siguiente mensaje:
Hola, mi nombre es Juan!
Ejemplo de uso de la POO en PL/SQL
Vamos a ver un ejemplo de cómo utilizar la POO en PL/SQL para crear una clase que represente un libro.
class Libro:
titulo = None
autor = None
editorial = None
paginas = None
def __init__(self, titulo, autor, editorial, paginas):
self.titulo = titulo
self.autor = autor
self.editorial = editorial
self.paginas = paginas
def mostrar_informacion(self):
print("Título: {}".format(self.titulo))
print("Autor: {}".format(self.autor))
print("Editorial: {}".format(self.editorial))
print("Páginas: {}".format(self.paginas))
libro = Libro("El Quijote de la Mancha", "Miguel de Cervantes", "Biblioteca Clásica", 1615)
libro