This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
wiki:psi [2024/08/28 17:36] – admin | wiki:psi [2024/08/28 17:42] (current) – admin | ||
---|---|---|---|
Line 5: | Line 5: | ||
Se produce una violación del principio, por ejemplo, cuando una interfaz tiene dos conjuntos de métodos $M_x$ y $M_y$. El primer conjunto es utilizado por los clientes $C_x$ (que no usan los métodos $M_y$). Inversamente, | Se produce una violación del principio, por ejemplo, cuando una interfaz tiene dos conjuntos de métodos $M_x$ y $M_y$. El primer conjunto es utilizado por los clientes $C_x$ (que no usan los métodos $M_y$). Inversamente, | ||
- | Ejemplo: Supongamos una interfaz Funcionario con los siguientes métodos: (1) retornar salario, (2) retornar contribución mensual al FGTS (Fondo de Garantía por Tiempo de Servicio) y (3) retornar SIAPE (es decir, el número de matrícula de todo funcionario público). Esta interfaz viola el Principio de Segregación de Interfaces, ya que solo los empleados de empresas privadas, contratados bajo el régimen de CLT, tienen una cuenta en el FGTS. Por otro lado, solo los empleados públicos tienen una matrícula en el SIAPE. | + | Ejemplo: Supongamos una interfaz |
<code java> | <code java> | ||
Line 12: | Line 12: | ||
double getSalario(); | double getSalario(); | ||
- | double getFGTS();// | + | double getFGTS();// |
- | int getSIAPE();// | + | int getSIAPE();// |
... | ... | ||
Line 20: | Line 20: | ||
</ | </ | ||
- | Una alternativa que atiende el Principio de Segregación de Interfaces consiste en crear interfaces específicas (FuncionarioCLT e FuncionarioPublico) que extiendadn la interfaz genérica (Funcionario). | + | Una alternativa que atiende el Principio de Segregación de Interfaces consiste en crear interfaces específicas ('' |
<code java> | <code java> |