4 replaced http://programmers.stackexchange.com/ with https://softwareengineering.stackexchange.com/
source | link

I'm working with a Java project that has several interfaces, many of which have only one implementation. (See related questionrelated question)

For a given revision of the software, one could think this acceptable because the interfaces were some plan for future extensions. However, when I look at the 200+ revisions over several years, those interfaces never had more than one implementation, (nor were they used in unit-testing).

It seems that in these cases of probable bloat (YAGNI) owing to the Interface Anti-pattern, it would be useful to apply the inverse of Extract Interface. However, Inline Class (the supposed inverse according to refactoring.com) is not what I'm referring to.

What's the name of the refactoring that removes an unused interface, substituting the sole class that implements it?

I'm working with a Java project that has several interfaces, many of which have only one implementation. (See related question)

For a given revision of the software, one could think this acceptable because the interfaces were some plan for future extensions. However, when I look at the 200+ revisions over several years, those interfaces never had more than one implementation, (nor were they used in unit-testing).

It seems that in these cases of probable bloat (YAGNI) owing to the Interface Anti-pattern, it would be useful to apply the inverse of Extract Interface. However, Inline Class (the supposed inverse according to refactoring.com) is not what I'm referring to.

What's the name of the refactoring that removes an unused interface, substituting the sole class that implements it?

I'm working with a Java project that has several interfaces, many of which have only one implementation. (See related question)

For a given revision of the software, one could think this acceptable because the interfaces were some plan for future extensions. However, when I look at the 200+ revisions over several years, those interfaces never had more than one implementation, (nor were they used in unit-testing).

It seems that in these cases of probable bloat (YAGNI) owing to the Interface Anti-pattern, it would be useful to apply the inverse of Extract Interface. However, Inline Class (the supposed inverse according to refactoring.com) is not what I'm referring to.

What's the name of the refactoring that removes an unused interface, substituting the sole class that implements it?

3 Added anti-patterns tag, since this refers to the so-called Interface anti-pattern
source | link

I'm working with a Java project that has several interfaces, many of which have only one implementation. (See related question)

For a given revision of the software, one could think this acceptable because the interfaces were some plan for future extensions. However, when I look at the 200+ revisions over several years, those interfaces never had more than one implementation, (nor were they used in unit-testing).

It seems that in these cases of probable bloat (YAGNI) owing to the Interface Anti-pattern, it would be useful to apply the inverse of Extract Interface. However, Inline Class (the supposed inverse according to refactoring.com) is not what I'm referring to.

What's the name of the refactoring that removes an unused interface, substituting the sole class that implements it?

I'm working with a Java project that has several interfaces, many of which have only one implementation. (See related question)

For a given revision of the software, one could think this acceptable because the interfaces were some plan for future extensions. However, when I look at the 200+ revisions over several years, those interfaces never had more than one implementation, (nor were they used in unit-testing).

It seems that in these cases of probable bloat (YAGNI), it would be useful to apply the inverse of Extract Interface. However, Inline Class (the supposed inverse according to refactoring.com) is not what I'm referring to.

What's the name of the refactoring that removes an unused interface, substituting the sole class that implements it?

I'm working with a Java project that has several interfaces, many of which have only one implementation. (See related question)

For a given revision of the software, one could think this acceptable because the interfaces were some plan for future extensions. However, when I look at the 200+ revisions over several years, those interfaces never had more than one implementation, (nor were they used in unit-testing).

It seems that in these cases of probable bloat (YAGNI) owing to the Interface Anti-pattern, it would be useful to apply the inverse of Extract Interface. However, Inline Class (the supposed inverse according to refactoring.com) is not what I'm referring to.

What's the name of the refactoring that removes an unused interface, substituting the sole class that implements it?

2 Added anti-patterns tag, since this refers to the so-called Interface anti-pattern
| link
1
source | link