Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

We're redesigning our application's plugin interface, so we're using the Adapter pattern with our proof-of-concept design to show that the new interface will function without committing to using it in the application itself.

We don't know what to call this new interface. It serves the same purpose as the old one - let's call that one CAbstractAppPlugin. Furthermore it will likely be, like its predecessor, an abstract class rather than a pure virtual interface (C++) indicating that we should still use "CAbstract" instead of "I". Slapping a "New" or "2" onto the name seems silly, but adopting a very similar name could lead to confusion until the old one is deprecated.

So how do you name a thing X that's replacing thing Y?

share|improve this question
2  
What's better about the new one? Could this be part of the name? –  Mike Aug 15 '13 at 21:37
    
If it's temporary, you should live with silly. –  JeffO Aug 16 '13 at 4:16
    
@TravisChristian: For added compatibility, consider having your V2 abstract class inherit from the original abstract class. That may allow old code to work without modification. –  Brian Aug 20 '13 at 14:55

1 Answer 1

up vote 5 down vote accepted

Unless they're something conceptual that you can add to the name, I'd just go with CAbstractAppPlugin2 or something similar. Your documentation can identify the differences.

CAbstractAppPluginWithSuperSizeFunctionAdded seems equally ridiculous, if not more so.

share|improve this answer
    
A very similar option would be to go with CAbstractAppPluginV2. –  Bobson Aug 15 '13 at 21:44
    
@Bobson: I thought about that, but felt that V2 might imply that it is a part of a larger version encompassing the entire application, not just that particular interface. –  Robert Harvey Aug 16 '13 at 0:08
1  
We're going with V2 which it turns out has been used on some regularly updated schemas in our code base. –  Travis Christian Aug 16 '13 at 15:32

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.