Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pablosanchez87/python_opp_solid_fundamentals
Repaso de los Fundamentos OPP y Solid a través el lenguaje Python
https://github.com/pablosanchez87/python_opp_solid_fundamentals
opp python solid
Last synced: 13 days ago
JSON representation
Repaso de los Fundamentos OPP y Solid a través el lenguaje Python
- Host: GitHub
- URL: https://github.com/pablosanchez87/python_opp_solid_fundamentals
- Owner: PabloSanchez87
- Created: 2024-06-06T10:23:00.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-07-22T08:41:08.000Z (6 months ago)
- Last Synced: 2024-11-18T10:23:39.251Z (2 months ago)
- Topics: opp, python, solid
- Language: Python
- Homepage:
- Size: 4.89 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🐍 POO | SOLID | Python 🐍
Este repositorio contiene una colección de ejercicios y proyectos de Python organizados en diferentes categorías. Cada sección aborda un aspecto específico de la Programación Orientada a Objetos y SOLID mediante el uso del lenguaje Python, desde los fundamentos hasta principios avanzados de diseño de software.
# Contenidos del Repositorio
## Python Fundamentals![Python_Fundamentals](resources/python_basics.webp)
Esta sección cubre los fundamentos del lenguaje Python, ideal para principiantes y para repasar conceptos básicos.- **Operadores y Estructuras de Control**: Uso de operadores y estructuras de control como bucles y condicionales.
- **Funciones y Alcance**: Definición y uso de funciones, así como el alcance de las variables.
- **Estructuras de Datos**: Listas, diccionarios, conjuntos, y más.
- **Manejo de Excepciones**: Cómo manejar errores y excepciones en Python.
- **Manejo de Ficheros**: Lectura y escritura de archivos.
- **JSON y XML**: Manipulación de datos en formatos JSON y XML.
- **Pruebas Unitarias**: Creación de pruebas unitarias para asegurar la calidad del código.## POO (Programación Orientada a Objetos)
![SOLID](resources/OOP.jpg)
En esta sección, se exploran los conceptos fundamentales de la programación orientada a objetos en Python.- **Introducción a POO**: Conceptos básicos y ejemplos iniciales.
- **Abstracción, Encapsulamiento, Herencia y Polimorfismo**: Ejemplos y ejercicios que ilustran estos principios de POO.
- **Herencia vs Composición**: Comparación y uso adecuado de herencia y composición en diseño de software.[Gráfico Programación orientada a Objetos](https://www.xmind.app/embed/2SwRjm/)
## Principios SOLID
![SOLID](resources/solid.png)
Esta sección contiene ejemplos y ejercicios que ilustran los principios SOLID de diseño de software.- **Responsabilidad Única (SRP)**: Ejemplos de cómo aplicar el principio de responsabilidad única.
- **Abierto/Cerrado (OCP)**: Ejercicios que muestran cómo extender el comportamiento del código sin modificarlo.
- **Sustitución de Liskov (LSP)**: Principios para asegurar que las subclases puedan reemplazar a las clases base sin problemas.
- **Segregación de Interfaces (ISP)**: Ejemplos de cómo dividir interfaces grandes en más pequeñas y específicas.
- **Inversión de Dependencias (DIP)**: Ejercicios que muestran cómo depender de abstracciones en lugar de concreciones.## Ejercicios Completos
Esta carpeta contiene una variedad de ejercicios prácticos que cubren diferentes aspectos de Python, incluido la resolución de ejercicios típicos de pruebas técnicas.## Cómo Empezar
1. **Clonar el repositorio**:
```bash
git clone https://github.com/PabloSanchez87/Python_OPP_SOLID_Fundamentals.git
```2. **Explorar los archivos**:
Revisa y ejecuta los archivos Python en cada sección para aprender y practicar.## Contribuciones
¡Las contribuciones son bienvenidas! Siéntete libre de abrir un issue o enviar un pull request con mejoras, correcciones o nuevos ejercicios.
## Contacto
Para cualquier consulta o sugerencia, puedes contactarme en [[email protected]](mailto:[email protected]).
---
¡Espero que este repositorio te sea útil para mejorar tus habilidades en Python!