@@ -1518,22 +1518,53 @@ psg-oop-2025/
15181518
15191519---
15201520
1521- 1 . Organiza el siguiente ejemplo en una estructura de carpetas y archivos
1521+ 1 . ** Refactoriza ** el siguiente ejemplo en una estructura de carpetas y archivos
15221522
1523- ``` text
1524- Un programa para gestionar una lista de tareas pendientes
1525- Permite agregar, eliminar y marcar tareas como completadas
1526- También permite eliminar tareas completadas
1527- y eliminar todas las tareas
1523+ Un programa para gestionar una lista de tareas pendientes:
1524+
1525+ - Permite agregar nuevas tareas
1526+ - Eliminar tareas
1527+ - Marcar tareas como completadas
1528+ - Eliminar solo tareas completadas
1529+ - Eliminar todas las tareas
1530+
1531+ * (1/6)*
1532+
1533+ ---
1534+
1535+ El programa debe ser ** refactorizado** :
1536+
1537+ - ** Utilizar** convenciones de estilo PEP 8
1538+ - ** Mejorar** nombres en clases, variables y métodos
1539+ - ** Crear** una estructura ordenada de carpetas y módulos de Python
1540+ - ** Incluir** la documentación del análisis y diagrama en un archivo README.md
1541+
1542+ * (2/6)*
1543+
1544+ ---
1545+
1546+
1547+ Separar las clases en ** archivos individuales** dentro de la carpeta ` ejercicio_01/models `
1548+
1549+ Implementar una organización de carpetas y archivos como la siguiente:
1550+
1551+ ``` bash
1552+ ejercicio_01/
1553+ ├── models/
1554+ │ ├── __init__.py
1555+ │ ├── tarea.py
1556+ │ └── lista_tareas.py
1557+ ├── main.py
1558+ └── README.md
15281559```
15291560
1530- - Renombra las variables y métodos siguiendo las convenciones de PEP 8 y buenas prácticas de nomenclatura
1531- - Refactoriza el código en una estructura de carpetas y añade la documentación de análisis y diagrama de clases
1532- en un archivo ` README.md ` dentro de la carpeta ` ejercicio_01 ` .
1561+ Mantener la misma funcionalidad del programa original
1562+
1563+ * (3/6) *
15331564
15341565---
15351566
1536- Diagrama de clases
1567+ Diagrama de clases original
15371568
15381569``` mermaid
15391570%%{init: {"theme": "dark", "look": "handDrawn" }}%%
@@ -1557,8 +1588,13 @@ direction LR
15571588```
15581589<!-- .element class="center-mermaid"-->
15591590
1591+ Debe incluirse el análisis y diagramas en ` README.md `
1592+
1593+ * (4/6)*
1594+
15601595---
1561- Código del ejemplo 01
1596+
1597+ Código original
15621598
15631599``` python
15641600class Tarea :
@@ -1634,36 +1670,89 @@ while True:
16341670 print (" Opción inválida, intenta de nuevo." )
16351671```
16361672
1673+ Debe refactorizarse y organizarse en archivos y carpetas en la carpeta ` ejercicio_01 `
1674+
1675+ * (5/6)*
1676+
16371677---
16381678
1639- 2 . Crea el siguiente programa siguiendo las buenas prácticas de PEP 8 y organiza el código en una estructura de carpetas y archivos
1679+ - Realiza el ** análisis** y ** diagrama de clases** para el programa en ` README.md ` dentro de la carpeta ` ejercicio_01 `
1680+ - Refactoriza el código manteniendo la misma funcionalidad
1681+ - Escribe el código en archivos separados y organiza en carpetas en ` ejercicio_01 `
1682+ - Utiliza ** nombres descriptivos** y sigue las buenas prácticas de ** PEP 8**
1683+ - Prueba que el programa funcione correctamente
16401684
1641- ``` text
1642- La Biblioteca Municipal va digitalizar su registro
1643- de préstamos de libros. Actualmente, los encargados
1644- anotan todo en un cuaderno:
1685+ * (6/6)*
1686+
1687+ ---
1688+
1689+ 2 . La Biblioteca Municipal iniciará la digitalización de su registro de préstamos
1690+ Actualmente, todos los datos se anotan manualmente en un cuaderno:
1691+
1692+ Información de ** libros** : título, autor e ISBN
1693+ Información de ** usuarios** : nombre
1694+
1695+ El objetivo es digitalizar el flujo de préstamos de libros
1696+
1697+ * (1/5)*
1698+
1699+ ---
1700+
1701+ El flujo de préstamos es el ** siguiente** :
16451702
1646- Los libros con su título, autor e ISBN.
1647- Los usuarios tienen un nombre
1648- La biblioteca cuenta con un flujo de préstamos:
164917031 . Un usuario ingresa su nombre
1650- 2. Se lista los libros disponibles
1704+ 2 . Se lista los libros
165117053 . El usuario elige un libro para prestar
1652- 4. Se registra la lista de prestados con el
1653- nombre del usuario y el libro prestado
1706+ 4 . Se registra la lista de prestados con el nombre del usuario y el libro prestado
165417075 . Puede prestarse más de un libro al mismo usuario
165517086 . Los usuarios tienen que devolver todos los libros a la vez
1656- 7. Se puede ver la lista de libros prestados y
1657- los usuarios que los tienen
1709+ 7 . Se puede ver la lista de libros prestados y los usuarios que los tienen
165817108 . Para salir se debe ingresar "salir"
1711+
1712+ * (2/5)*
1713+
1714+ ---
1715+
1716+ El programa debe ser ** creado** siguiendo las buenas prácticas de PEP 8 y organizado en una estructura de carpetas y archivos
1717+ - ** Crear** clases para representar ` Libro ` , ` Usuario `
1718+ - ** Organizar** el código en una estructura ordenada de carpetas y módulos de Python
1719+ - ** Incluir** la documentación del análisis y diagrama en un archivo ` README.md `
1720+ - ** Mantener** la funcionalidad descrita en el flujo de préstamos
1721+ - ** Utilizar** nombres descriptivos para clases, variables y métodos
1722+
1723+ * (3/5)*
1724+
1725+ ---
1726+
1727+ La estructura de carpetas y archivos debe ser similar a la siguiente:
1728+
1729+ ``` bash
1730+ ejercicio_02/
1731+ ├── modelos/
1732+ │ ├── __init__.py
1733+ │ ├── libro.py
1734+ │ └── usuario.py
1735+ ├── logica/
1736+ │ │── __init__.py
1737+ │ └── biblioteca.py
1738+ ├── main.py
1739+ └── README.md
16591740```
16601741
1742+ * (4/5)*
1743+
16611744---
16621745
1663- Añade la documentación con análisis y diagrama de clases en un archivo ` README.md ` dentro de la carpeta ` ejercicio_02 ` y
1664- crea el código para el ejercicio
1746+ Realizar el análisis y diagrama de clases para el programa en ` README.md ` dentro de la carpeta ` ejercicio_02 `
1747+ Refactorizar el código manteniendo la misma funcionalidad
1748+ Escribir el código en archivos separados y organizar en carpetas en ` ejercicio_02 `
1749+ Utilizar nombres descriptivos y seguir las buenas prácticas de PEP 8
1750+ Probar que el programa funcione correctamente
1751+
1752+ * (5/5)*
16651753
16661754---
1755+
16671756<!-- .slide: data-background-image="../../content/psg-bg-dark.png" data-background-size="100%"-->
16681757
16691758<br >
0 commit comments