Ich habe häufig Konflikte zwischen einem Namespace und einer Klasse in diesem Namespace benennen und möchte eine beste Praxis wissen, dass dies für den Umgang mit, wenn es sinnvoll erscheint, diese Namen in erster Linie zu verwenden, neben zufällige Präfixe hinzufügen.Wie vermeiden Sie, den gleichen Namen für eine Klasse und ihren Namespace zu haben, z. B. Technology.Technology?
Es schien sinnvoll, einen Namespace von Models.Technology mit Dutzenden von Technologieklassen (dh Waffen-, Landwirtschafts-, Recyclingtechnologien) und einigen verwandten Schnittstellen zu haben. Ich entschied mich außerdem für eine abstrakte Technologieklasse im Technologie-Namensraum, von der alle Technologien abgeleitet sind.
Doch dies zwingt mich Code wie folgt zu verwenden:
public Technology.Technology research(Technology.Technology tech) {...}
und ebenfalls:
public Building.Building build(int count) {...}
Durch die Art und Weise habe ich nicht meinen Namespace Technologies nennen, da ich diesen Begriff an anderer Stelle verwenden, wie ein Wrapper für eine Liste der verfügbaren Technologien ...
ich die Liste der Technologien zu 'TechnologyList' umbenennen würde, und gehen Sie für' Technologies.Technology'. –