What are the cost vs. benefits of creating interfaces and how should they be balanced? I am only considering cases where interfaces are optional and aren’t needed.
Simplify interaction: Easier to see how to use a List than an ArrayList
Make testing easier because replacement implementations can be used
Can make future changes easier
Harder to understand what the code is doing...
on Jul 15, 2013
Normally I see abstract classes named as AbstractClass. But when there are many abstract classes that requires typing at least AbstractC when using code completion. Therefore I suggest that abstract classes be named ClassAbstract so that code completion is more usable. "Abstract" is a modifier on the class name anyway and it doesn't need to be in the primary position. What do you think?
on Dec 18, 2007