Encapsularlo

El verdadero propósito de la encapsulación es reunir en un lugar el conocimiento relacionado con el dispositivo de una determinada entidad, las reglas de manejo y las operaciones con él. La encapsulación apareció mucho antes de lo que comúnmente se piensa. Los módulos en los programas C son encapsulados. Las rutinas de ensamblador son encapsulación.

Lo contrario de la encapsulación es la difusión del conocimiento sobre el funcionamiento de algo en todo el programa.

Al implementar el comportamiento, a veces elegimos entre varias opciones equivalentes. En el futuro, el peso de una de las opciones rechazadas puede aumentar bajo la influencia de las circunstancias cambiantes, la opción elegida e implementada anteriormente no tendrá éxito. Cambiar la decisión será mucho más fácil si absolutamente todos los detalles de la implementación de la opción seleccionada se concentran en un solo lugar.

Ejemplo: trabajar con valores monetarios. No es ningún secreto que en muchos sistemas de comercio electrónico, los valores monetarios se implementan como números de coma flotante. Creo que todos somos conscientes de que con la simple adición de dos números "enteros", representados como variables de punto flotante, se puede formar un "poco no entero". Por lo tanto, con tal implementación, uno tiene que insertar una llamada de función de redondeo aquí y allá. Esta es la mancha de conocimiento sobre la estructura de la entidad a lo largo del programa. La encapsulación en este caso es recolectar (ocultar) en un lugar el conocimiento de que el dinero se representa como un valor de coma flotante, y que constantemente debe redondearse durante las operaciones más inocentes. Escóndete para que cuando uses la entidad "dinero", la cuestión del redondeo ni siquiera entre. Con la encapsulación, no habrá problemas para reemplazar la implementación de "dinero" de un número de punto flotante a un número de punto fijo.

Source: https://habr.com/ru/post/es435900/


All Articles