A company that makes Computer Assisted Design (CAD) software has, within its application, some utility
classes that are used to perform 3D rendering tasks. The company's chief scientist has just improved the
performance of one of the utility classes' key rendering algorithms, and has assigned a programmer to replace
the old algorithm with the new algorithm. When the programmer begins researching the utility classes, she is
happy to discover that the algorithm to be replaced exists in only one class. The programmer reviews that
class's API, and replaces the old algorithm with the new algorithm, being careful that her changes adhere
strictly to the class's API. Once testing has begun, the programmer discovers that other classes that use the
class she changed are no longer working properly. What design flaw is most likely the cause of these new
bugs?
A. Inheritance
B. Tight coupling
C. Low cohesion
D. High cohesion
E. Loose coupling
F. Object immutability
classes that are used to perform 3D rendering tasks. The company's chief scientist has just improved the
performance of one of the utility classes' key rendering algorithms, and has assigned a programmer to replace
the old algorithm with the new algorithm. When the programmer begins researching the utility classes, she is
happy to discover that the algorithm to be replaced exists in only one class. The programmer reviews that
class's API, and replaces the old algorithm with the new algorithm, being careful that her changes adhere
strictly to the class's API. Once testing has begun, the programmer discovers that other classes that use the
class she changed are no longer working properly. What design flaw is most likely the cause of these new
bugs?
A. Inheritance
B. Tight coupling
C. Low cohesion
D. High cohesion
E. Loose coupling
F. Object immutability
No comments:
Post a Comment