Skip to content

gemayc/open-closed

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Proyecto Open/Closed (OCP) – TypeScript

Este repositorio contiene un ejemplo práctico en TypeScript para entender el principio Open/Closed (OCP), parte de los principios SOLID.

📖 Descripción

El proyecto muestra cómo aplicar OCP con un sistema de notificaciones (Email, SMS, WhatsApp, etc.):

  • Abierto a la extensión → se pueden añadir nuevos tipos de notificación (ej. Telegram) creando una clase nueva.
  • Cerrado a la modificación → no es necesario cambiar el código ya existente (la función notify no se toca).

📊 Presentación

La explicación del principio Open/Closed (OCP) está disponible aquí:
Ver presentación en PDF

🚀 Tecnologías

  • Node.js
  • TypeScript
  • Git & GitHub

📂 Estructura

open-closed/
├── src/
│   ├── abstractions/     # Interfaces (contratos comunes)
│   ├── implementations/  # Clases concretas (Email, SMS, WhatsApp...)
│   └── index.ts          # Motor principal notify()
├── package.json
├── tsconfig.json
├── .gitignore
└── README.md

▶️ Cómo ejecutar

  1. Clonar el repositorio:

    git clone https://github.com/tu-usuario/open-closed.git
    cd open-closed
  2. Instalar dependencias:

    npm install
  3. Ejecutar en desarrollo:

    npm run dev
  4. Compilar y ejecutar en JavaScript:

    npm run build
    npm start

🎯 Objetivo

  • Practicar el principio Open/Closed con un ejemplo sencillo.

👩‍💻 Autora

Gema Yébenes Caballero LinkedIn

✨ Proyecto creado como parte de la formación en desarrollo Fullstack.

About

Principio Open/Closed (OCP

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors