This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
wiki:psp_1 [2024/08/24 23:30] – admin | wiki:psp_1 [2024/08/28 23:52] (current) – admin | ||
---|---|---|---|
Line 250: | Line 250: | ||
El acoplamiento estructural puede ser aceptable o no aceptable, dependiendo de la estabilidad de la interfaz de la clase de destino. El acoplamiento evolutivo, especialmente cuando cualquier cambio en '' | El acoplamiento estructural puede ser aceptable o no aceptable, dependiendo de la estabilidad de la interfaz de la clase de destino. El acoplamiento evolutivo, especialmente cuando cualquier cambio en '' | ||
- | Kent Beck, cuando trabajaba en Facebook, creó un glosario de términos relacionados con el diseño de software. En este glosario, acoplamiento se define de la siguiente forma [[https:// | + | Kent Beck, cuando trabajaba en Facebook, creó un glosario de términos relacionados con el diseño de software. En este glosario, acoplamiento se define de la siguiente forma [[https:// |
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, | 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, | ||
+ | |||
+ | ====== 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. | ||
+ | |||
+ | Estudiaremos los siete principios de diseño enumerados en la siguiente tabla. La tabla también muestra las propiedades de diseño que se contemplan al seguir cada uno de estos principios. | ||
+ | |||
+ | ^ Principios de Diseño ^ Propiedades de Diseño ^ | ||
+ | | [[wiki: | ||
+ | | [[wiki: | ||
+ | | [[wiki: | ||
+ | | [[wiki: | ||
+ | | [[wiki: | ||
+ | | [[wiki: | ||
+ | | [[wiki: | ||
+ | |||
+ | 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:// | ||
+ | |||
+ | * **S**ingle Responsibility Principle (Principio de Responsabilidad Única) | ||
+ | * **O**pen/ | ||
+ | * **L**iskov Substitution Principle (Principio de Sustitución de Liskov) | ||
+ | * **I**nterface Segregation Principle (Principio de Segregación de Interfaces) | ||
+ | * **D**ependency Inversion Principle (Principio de Inversión de Dependencias) | ||
+ | |||
+ | Los principios de diseño que vamos a estudiar tienen un punto en común: no solo buscan resolver un problema, sino también asegurar que la solución encontrada pueda mantenerse y evolucionar con éxito en el futuro. Los mayores problemas con los proyectos de software suelen ocurrir después de la implementación, |