Skip to main content

Desarrollo orientado al objeto con Pega

Desarrollo orientado al objeto en Pega

La consideración de la reutilización y el diseño de activos de Pega comienza con una mención breve de los principios de desarrollo orientado al objeto (OOD), cómo Pega Platform™ aprovecha estos principios y cómo Pega Platform le permite aprovecharlos también.

Según Robert Martin, el desarrollo orientado al objeto comprende tres aspectos fundamentales y cinco principios.

Aspectos del desarrollo orientado al objeto

Los tres aspectos fundamentales del OOD son los siguientes:

Encapsulación

La encapsulación se usa para ocultar los valores o el estado de un objeto de datos estructurado dentro de una clase y evitar el acceso directo de partes no autorizadas al objeto.

Herencia

La herencia es la capacidad de un objeto de adoptar estados, comportamientos y funcionalidades de otro objeto.

Polimorfismo

El polimorfismo le permite asignar varios significados y usos a una entidad según el contexto. Puede usar una única entidad como categoría general para distintos tipos de acciones según corresponda.

Principios de desarrollo SOLID

SOLID es una herramienta nemotécnica en inglés para los cinco principios del OOD. Según Martin, el OOD debe cumplir con estos principios.

ReSponsabilidad única
AbiertO y cerrado
Sustitución de Liskov
Segregación de Interfaces
Inversión de Dependencias

Responsabilidad única

El principio de responsabilidad única establece que cada módulo debe ser responsable de una única parte de la funcionalidad del software y que el módulo encapsula la responsabilidad.

La aplicación UIKit, que contiene un único ruleset, es un ejemplo de responsabilidad única.

Abierto y cerrado

El principio de abierto y cerrado establece que las entidades de software (como las clases, los módulos y las funciones) deben estar abiertas para la extensión, pero cerradas para la modificación. Una entidad puede permitir que su comportamiento se amplíe sin modificar el código fuente.

El principio de abierto y cerrado está relacionado más directamente con la capacidad de extensión en Pega. Si se implementa correctamente, un objeto (A) que usa otro objeto (B) no deberá cambiar cuando se agreguen funciones al objeto B. Seguir este principio ayuda a evitar el efecto dominó de mantenimiento intensivo cuando se agrega un código nuevo para respaldar requerimientos nuevos. Un ejemplo del principio abierto y cerrado es la clase PegaHC-Data-Party de Pega Foundation for Healthcare, que amplía la clase Data-Party de PegaRULES.

Sustitución de Liskov

El principio de sustitución de Liskov establece que los objetos que hacen referencia a otros objetos por su clase básica no necesitan saber cómo se amplió esa clase. Un ejemplo en Pega Platform es que la correspondencia y el enrutamiento funcionan de la misma manera independientemente de si la clase es Data-Party-Person o Data-Party-Org.

Segregación de interfaces

El principio de segregación de interfaces (ISP) establece que es mejor definir varias interfaces para un objeto, donde cada una cumpla un propósito específico, en lugar de exponer una única interfaz grande y compleja. El objetivo del ISP es mantener un sistema desconectado y que sea más sencillo refactorizarlo, cambiarlo y reimplementarlo. Entre los ejemplos del ISP en Pega Platform, se incluyen los paquetes de servicio y las páginas de datos con parámetros. La propagación de datos también cumple con la definición del ISP si se trasmite una única instancia de datos en comparación con varias propiedades individuales escalares.

Inversión de dependencias

El principio de inversión de dependencias hace referencia a una técnica de desarrollo de software donde los objetos facilitan la configuración y construcción de los objetos de los cuales dependen. Esto se diferencia de un objeto que encapsula completamente sus dependencias. El principio de inversión de dependencias funciona estrechamente con la sustitución de Liskov. Un ejemplo de la inversión de dependencias en Pega Platform es la referencia de clase dinámica (RCD). En lugar de que un objeto use estrictamente un valor de codificación rígida en la pestaña Pages & Classes (Páginas y clases) de la regla para crear una página, se puede solicitar a una página de datos que proporcione el valor para la propiedad pxObjClass de la página.


This Topic is available in the following Module:

If you are having problems with your training, please review the Pega Academy Support FAQs.

¿Le ha resultado útil este contenido?

El 33% ha encontrado útil este contenido.

¿Quiere ayudarnos a mejorar este contenido?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice