Removing unnecessary code makes your app cleaner, more efficient and easier to understand.
Apex methods that do not contain any code
Apex methods that are never invoked, either directly or indirectly
Apex interfaces with no concrete implementations
This rule will not trigger on Apex methods annotated with @testSetup