Sollten wir einen Teamcodierungsstandard haben, dem die Namen abstrakter Klassen ein Präfix haben Abstract
? z.B
public abstract class AbstractB implements B {}
Sollten wir einen Teamcodierungsstandard haben, dem die Namen abstrakter Klassen ein Präfix haben Abstract
? z.B
public abstract class AbstractB implements B {}
Antworten:
Ja, wenn Sie sich die Javadocs der Standardbibliothek unter http://download.oracle.com/javase/6/docs/api/ ansehen, werden Sie feststellen, dass die Liste der Klassen im unteren linken Rahmen mit beginnt abstrakte Klassen unter Verwendung der Namenskonvention, die Sie in Ihrer Frage erwähnt haben.
AbstractAction
AbstractAnnotationValueVisitor6
AbstractBorder
AbstractButton
AbstractCellEditor
AbstractCollection
AbstractColorChooserPanel
AbstractDocument
AbstractDocument.AttributeContext
AbstractDocument.Content
AbstractDocument.ElementEdit
AbstractElementVisitor6
AbstractExecutorService
AbstractInterruptibleChannel
AbstractLayoutCache
AbstractLayoutCache.NodeDimensions
AbstractList
AbstractListModel
AbstractMap
AbstractMap.SimpleEntry
AbstractMap.SimpleImmutableEntry
AbstractMarshallerImpl
AbstractMethodError
AbstractOwnableSynchronizer
AbstractPreferences
AbstractProcessor
AbstractQueue
AbstractQueuedLongSynchronizer
AbstractQueuedSynchronizer
AbstractScriptEngine
AbstractSelectableChannel
AbstractSelectionKey
AbstractSelector
AbstractSequentialList
AbstractSet
AbstractSpinnerModel
AbstractTableModel
AbstractTypeVisitor6
AbstractUndoableEdit
AbstractUnmarshallerImpl
AbstractWriter
Nehmen Sie einen von ihnen, sagen Sie den ersten und überprüfen Sie seine Definition : AbstractAction
. Es implementiert in Action
der Tat, was wiederum Ihrer Konvention ähnlich ist. Es ist Subklassen werden genannt wie: ClosedAction
, MaximizeAction
usw.
AbstractMethodError
hier zutrifft.
Im Allgemeinen ist jede Art von Standard eine gute Sache in einer Teamumgebung. Andernfalls könnten Teammitglieder Klassen so benennen, dass nur sie sie verstehen, und dann könnten Sie eine Mischung aus den verschiedenen Codierungsstilen der Leute erhalten, was zu Verwirrung führt.
Moderne IDEs zeigen beschreibenden Text an, wenn Sie mit der Maus über ein Objekt fahren. Das Präfix ist in diesem Fall redundant.
Ich werde in einer Antwort nicht Ja oder Nein sagen, aber was auch immer Sie wählen, verwenden Sie ein gutes statisches Analysewerkzeug , um dies sicherzustellen.
Wie bei den meisten Fragen dieser Art: "es kommt darauf an". Ich mag Beständigkeit und Klarheit. Wenn es also für Sie und Ihren Shop funktioniert, ist es großartig. Wenn Sie jedoch über ältere abstrakte Klassen verfügen, möchten Sie diese zurückgehen und sie auf dieselbe Namenskonvention umgestalten.