Skip to Main Content
Patrones de Arquitectura con Python
book

Patrones de Arquitectura con Python

by Harry Percival, Bob Gregory
September 2024
Intermediate to advanced content levelIntermediate to advanced
304 pages
7h 50m
Spanish
O'Reilly Media, Inc.
Book available
Content preview from Patrones de Arquitectura con Python

Capítulo 13. Inyección de dependencia (y Bootstrapping)

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

La inyección de dependencia (DI) se mira con recelo en el mundo Python. Y hasta ahora nos las hemos arreglado bien sin ella en el código de ejemplo de este libro.

En este capítulo, exploraremos algunos de los puntos dolorosos de nuestro código que nos llevan a considerar el uso de DI, y presentaremos algunas opciones sobre cómo hacerlo, dejando que elijas la que te parezca más pitónica.

También añadiremos un nuevo componente a nuestra arquitectura, llamado bootstrap.py; se encargará de la inyección de dependencias, así como de algunas otras cosas de inicialización que necesitamos a menudo. Explicaremos por qué este tipo de cosas se denominan raíz de composición en los lenguajes OO, y por qué el script bootstrap es perfecto para nuestros propósitos.

La Figura 13-1 muestra el aspecto de nuestra aplicación sin un bootstrapper: los puntos de entrada realizan gran parte de la inicialización y el traspaso de nuestra dependencia principal, el UoW.

Consejo

Si aún no lo has hecho, merece la pena que leas el Capítulo 3antes de continuar con este capítulo, en particular el debate sobre la gestión de dependencias funcional frente a la orientada a objetos.

apwp 1301
Figura 13-1. Sin bootstrap: los puntos de entrada hacen mucho
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Introducción a Python, 2ª Edición

Introducción a Python, 2ª Edición

Bill Lubanovic

Publisher Resources

ISBN: 9781098185763Supplemental Content