preloader

1 janvier 1 | 3 minutes de lecture
Index du contenu

Sin embargo, esto plantea la pregunta; ¿Cómo sabes lo que se requiere? Como hacer sabe que debe proporcionar los operadores numéricos para que un objeto se use con la clase Calculadora? La respuesta es que se utiliza un concepto conocido como Protocolo. Un protocolo es una descripción informal de la interfaz del programador proporcionada por algo en Python (por ejemplo, una clase, pero también podría ser un módulo o un conjunto de funciones independientes). Se define únicamente a través de la documentación (y, por lo tanto, la clase Calculadora debe tener una cadena de documentación de clase que defina su protocolo). Con base en la información proporcionada por el protocolo si una función o método requiere un objeto para proporcionar una operación específica (o método), entonces si todo funciona excelente; si no, se lanzará un error y el tipo no es compatible. Es uno de los elementos clave en Python que permite el concepto Orientado a Objetos de polimorfismo para operar. 27.5 Un ejemplo de protocolo Existen numerosos protocolos comunes que se pueden encontrar en Python. Por ejemplo, existe un protocolo para definir Secuencias, como un contenedor que puede se puede acceder a un elemento a la vez. Este protocolo requiere que cualquier tipo que vaya a ser retenido en el contenedor debe proporcione los métodos len() y getitem(). Por lo tanto, cualquier clase que implemente estos dos métodos cumple con los requisitos de la protocolo. Sin embargo, debido a que los protocolos son informales y no se aplican en Python, no es realmente necesario para implementar todos los métodos en un protocolo (como vimos en el sección previa). Por ejemplo, si se sabe que una clase solo se usará con iteración, entonces puede que solo sea necesario implementar el método getitem(). 27.6 El protocolo del administrador de contexto Otro ejemplo concreto es el del Context Manager Protocol. este protocolo se introdujo en Python 2.5, por lo que ahora está muy bien establecido. Está asociado con la declaración ‘con como’. Esta afirmación se usa típicamente con clases que necesitarán asignar y liberar los llamados recursos. Estos recursos pueden ser archivos, conexiones a bases de datos, etc. En cada uno de estos casos es necesario realizar una conexión (por ejemplo, a un archivo o una base de datos) antes de que se puede utilizar el objeto asociado. Sin embargo, la conexión debe cerrarse y liberarse antes de que terminemos. utilizando el objeto. Esto se debe a que las conexiones colgantes a cosas como archivos y las bases de datos pueden quedarse y causar problemas más adelante (por ejemplo, normalmente solo se permite un número limitado de conexiones simultáneas a un archivo o una base de datos a la vez 27.4 Protocolos 315

comments powered by Disqus

popular post

Temas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza

Lire plus

Temas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza

Lire plus

• https://docs.python.org/3/ El sitio principal de documentación de Python 3. Contiene tutoriales, referencias de bibliotecas, guías de configuración e instalación, así como Python cómo-tos • https://docs.

Lire plus