T5 Principios Diseno Handout
Dise˜
no Software
Eduardo Mosqueira Rey (Coordinador)
Amparo Alonso Betanzos, David Alonso R´ıos
Departamento de Computaci´
on, Facultad de Inform´
atica
Calidad en el Dise˜
no
Principios SOLID
Tipos de Herencia
´Indice
1
Calidad en el Dise˜
no
2
Principios SOLID
3
Tipos de Herencia
E. Mosqueira Rey (Coordinador), A. Alonso Betanzos, D. Alonso R´ıos
Tema5: Principios de Dise˜
no
2
Calidad en el Dise˜
no
Principios SOLID
Tipos de Herencia
Malos Olores en el Dise˜
no
Principios de Dise˜
no
´Indice
1
Calidad en el Dise˜
no
Malos Olores en el Dise˜
no
Principios de Dise˜
no
2
Principios SOLID
3
Tipos de Herencia
E. Mosqueira Rey (Coordinador), A. Alonso Betanzos, D. Alonso R´ıos
Tema 5: Principios de Dise˜
no
3
Calidad en el Dise˜
noPrincipios SOLID
Tipos de Herencia
Malos Olores en el Dise˜
no
Principios de Dise˜
no
Calidad en el dise˜no
¿C´
omo reconocer un buen dise˜
no?
“Un sistema est´a bien dise˜
nado si es f´acil de comprender, f´acil de cambiar
y f´acil de reutilizar. No presenta dificultades concretas de desarrollo, es
simple, terso y econ´omico. Es un placer trabajar con ´el. A la inversa, un
mal dise˜
no apestacomo la carne podrida”
Robert C. Martin
E. Mosqueira Rey (Coordinador), A. Alonso Betanzos, D. Alonso R´ıos
Tema 5: Principios de Dise˜
no
4
Calidad en el Dise˜
no
Principios SOLID
Tipos de Herencia
Malos Olores en el Dise˜
no
Principios de Dise˜
no
Malos olores en el dise˜no
Malos olores en el dise˜
no
Un mal olor en el dise˜
no es deficiencia en el mismo que posiblemente
indica un problemam´as profundo.
Usualmente no son errores de programaci´
on ya que no son
t´ecnicamente incorrectos y no impiden que el programa funcione
correctamente
Sin embargo, s´ı puede ralentizar el desarrollo o aumentar el riesgo de
errores o fallos en el futuro
E. Mosqueira Rey (Coordinador), A. Alonso Betanzos, D. Alonso R´ıos
Tema 5: Principios de Dise˜
no
5
Calidad en el Dise˜
no
Principios SOLIDTipos de Herencia
Malos Olores en el Dise˜
no
Principios de Dise˜
no
Malos olores en el dise˜no
Rigidez
Es la tendencia del software a ser dif´ıcil de cambiar, incluso en sus
formas m´
as sencillas
P.ej. cada vez que cambias algo, siempre hay que cambiar algo m´
as
en una secuencia interminable de cambios
Fragilidad
Es la tendencia del software a romperse por muchas partes cada vez
que escambiado
P.ej. Un cambio en una parte del sistema provoca errores en muchas
otras partes que no tienen nada que ver
La rigidez y la fragilidad aumentan la aversi´
on a realizar cambios que
pueden ser necesarios, “si funciona, no lo toques”
E. Mosqueira Rey (Coordinador), A. Alonso Betanzos, D. Alonso R´ıos
Tema 5: Principios de Dise˜
no
6
Calidad en el Dise˜
no
Principios SOLID
Tipos de HerenciaMalos Olores en el Dise˜
no
Principios de Dise˜
no
Malos olores en el dise˜no
Inmovilidad
Es la incapacidad de reusar software de otros proyectos o de otras
partes del mismo proyecto
P.ej. Se hace m´
as sencillo escribir de nuevo un software en vez de
aprovechar partes ya existentes
Viscosidad
Un sistema viscoso es aquel en el que es dif´ıcil hacer cambios que
preserven el dise˜
no actual yresulta m´
as sencillo incorporar estos
cambios mediante trucos (hacks) en el dise˜
no
Un sistema poco viscoso es aquel en el que es f´
acil introducir
cambios que mantengan el dise˜
no
E. Mosqueira Rey (Coordinador), A. Alonso Betanzos, D. Alonso R´ıos
Tema 5: Principios de Dise˜
no
7
Calidad en el Dise˜
no
Principios SOLID
Tipos de Herencia
Malos Olores en el Dise˜
no
Principios de Dise˜
noPrincipios de dise˜no
Principios de dise˜
no
Son un conjunto de recomendaciones que nos permitir´an desarrollar
c´
odigo m´as robusto y reusable
on inteligente de las propiedades de la
Se basan en la utilizaci´
Orientaci´
on a Objetos
Son recomendaciones de car´acter b´asico y gen´erico y no tratan de
resolver un problema concreto
Los m´as conocidos son los principios SOLID enunciados por...
Regístrate para leer el documento completo.