Deck Flashcards

1
Q

Categoría: Bloaters

A

Cuando el código crece tanto que no puede ser efectivamente manejado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Long Method

A

Problema:
Métodos de más de 10 líneas que esconden código superfluo.
Solución:
Dividir métodos utilizando herramientas como NetBeans

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Large Class

A

Problema:
Clases demasiado grandes que se vuelven inmanejables.
Solución:
Separar en clases, subclases o interfaces, por ejemplo, usando herramientas de IDE como NetBeans

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Subcategoría: Primitive Obsession

A

Problema:
Uso de datos primitivos en lugar de objetos, especialmente en momentos de agotamiento durante el desarrollo.
Solución:
Reemplazar primitivos por variables de objetos, subclases o transformar arreglos en objetos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Subcategoría: Data Clumps

A

Problema:
Grupos idénticos de variables, como parámetros repetitivos (ejemplo: configuración de conexión a bases de datos).
Solución:
Convertir estos grupos en objetos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Long Parameter List

A

Problema:
Uso de más de 3 parámetros, lo que genera dependencia entre clases y aumenta la complejidad.

Solución:
Reemplazar con un objeto que agrupe los parámetros.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Categoría: Ausencia de Principios de Diseño OO

A

Descripción:
Diseño orientado a objetos aplicado de forma errónea o incompleta.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Subcategoría: Switch Statements

A

Problema:
Uso excesivo de declaraciones switch.
Solución:
Reemplazar con polimorfismo o métodos específicos según el caso.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Subcategoría: Temporary Field

A

Problema:
Campos temporales poco usados dentro de una clase.
Solución:
Mover esos campos a una clase separada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Subcategoría: Refused Bequest

A

Problema:
Herencia inadecuada con métodos innecesarios heredados.
Solución:
Reestructurar la jerarquía de herencia.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Alternative Classes with Different Interfaces

A

Problema:
Clases duplicadas con interfaces diferentes.
Solución:
Eliminar duplicidad y unificar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Change Preventers

A

Descripción:
Crean dificultades para implementar cambios o anticiparse al desarrollo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Divergent Change

A

Problema:
Un cambio en una clase obliga a modificar múltiples métodos.
Solución:
Asociar clases y métodos a un dominio específico del problema.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Shotgun Surgery

A

Problema:
Un cambio requiere modificar varias clases debido a la división de responsabilidades.
Solución:
Reasignar responsabilidades a clases específicas para encontrar un balance entre estructura y diseño.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly