User Tools

Site Tools


wiki:psp_1

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
wiki:psp_1 [2024/08/24 23:47] adminwiki:psp_1 [2024/08/28 23:52] (current) admin
Line 265: Line 265:
 Miles de sistemas web dependían de esta función trivial, pero la dependencia ocurría de manera indirecta. Los sistemas usaban npm para descargar dinámicamente el código JavaScript de una biblioteca B1, que a su vez dependía de una biblioteca B2 cuyo código también estaba en npm, y así sucesivamente, hasta alcanzar una biblioteca Bn que dependía de left-pad. Como resultado, todos los sistemas que dependían de left-pad — de forma directa o indirecta — quedaron fuera de servicio durante algunas horas, hasta que la biblioteca se volvió a insertar en npm. En resumen, los sistemas se vieron afectados por un problema en una biblioteca trivial, y no tenían la menor idea de que estaban acoplados a ella. Miles de sistemas web dependían de esta función trivial, pero la dependencia ocurría de manera indirecta. Los sistemas usaban npm para descargar dinámicamente el código JavaScript de una biblioteca B1, que a su vez dependía de una biblioteca B2 cuyo código también estaba en npm, y así sucesivamente, hasta alcanzar una biblioteca Bn que dependía de left-pad. Como resultado, todos los sistemas que dependían de left-pad — de forma directa o indirecta — quedaron fuera de servicio durante algunas horas, hasta que la biblioteca se volvió a insertar en npm. En resumen, los sistemas se vieron afectados por un problema en una biblioteca trivial, y no tenían la menor idea de que estaban acoplados a ella.
  
-====== Principios de Diseño SOLID ======+ 
 +====== Principios de Diseño SOLID y Otros ======
    
 Los principios de diseño son recomendaciones más concretas que los desarrolladores de software deben seguir para cumplir con las propiedades de diseño. Así, las propiedades de diseño pueden verse como recomendaciones aún genéricas (o tácticas), mientras que los principios ahora están en un nivel operativo. Los principios de diseño son recomendaciones más concretas que los desarrolladores de software deben seguir para cumplir con las propiedades de diseño. Así, las propiedades de diseño pueden verse como recomendaciones aún genéricas (o tácticas), mientras que los principios ahora están en un nivel operativo.
Line 272: Line 273:
  
 ^ Principios de Diseño ^ Propiedades de Diseño ^  ^ Principios de Diseño ^ Propiedades de Diseño ^ 
-| Responsabilidad única    | Cohesión   |  +| [[wiki:pru|Responsabilidad Única]]    | Cohesión   |  
-| Segregación de Interfaces    | Cohesión  |  +| [[wiki:psi|Segregación de Interfaces]]    | Cohesión  |  
-| Inversión de Dependencias    | Acoplamiento +| [[wiki:pid|Inversión de Dependencias]]    | Acoplamiento 
-| Preferir Composición sobre Herencia    | Acoplamiento +| [[wiki:ppch|Preferir Composición sobre Herencia]]    | Acoplamiento 
-| Demeter  | Ocultamiento de la Información +| [[wiki:pd|Demeter]]  | Ocultamiento de la Información 
-| Abierto/Cerrado  | Extensibilidad +| [[wiki:pac|Abierto/Cerrado]]  | Extensibilidad 
-| Sustitución de Liskov  | Extensibilidad  |+| [[wiki:psl|Sustitución de Liskov]]  | Extensibilidad  |
  
 Cinco de los principios que vamos a estudiar son conocidos como los Principios SOLID, un acrónimo acuñado por Robert Martin y Michael Feathers [[https://dl.acm.org/doi/book/10.5555/3175742|(enlace)]]. Este acrónimo deriva de la letra inicial de cada principio en inglés: Cinco de los principios que vamos a estudiar son conocidos como los Principios SOLID, un acrónimo acuñado por Robert Martin y Michael Feathers [[https://dl.acm.org/doi/book/10.5555/3175742|(enlace)]]. Este acrónimo deriva de la letra inicial de cada principio en inglés:
wiki/psp_1.1724557673.txt.gz · Last modified: 2024/08/24 23:47 by admin