8 Stimmen

Kürzere Benennungskonvention für Typen

Ich entwickle ein Framework, und einige der Objekte haben sehr lange Namen. Ich mag das nicht wirklich, aber ich mag auch keine Akronyme. Ich versuche, einen kürzeren Namen für "EventModelSocket" zu finden, im Grunde ein Wrapper um die .Net-Socket-Klasse, die verschiedene Ereignisse und Methoden zum Senden von Dateien, Objekten usw. implementiert. Einige der Objekte haben aus diesem Grund sehr lange Namen, wie zum Beispiel "EventModelSocketObjectReceivedEventArgs".

Ich habe alles versucht, vom Thesaurus über ein Wörterbuch bis hin zum stundenlangen Sitzen und Nachdenken.

Wie benennt man etwas am besten, wenn man in eine solche Situation kommt?

20voto

John MacIntyre Punkte 12808

Schieben Sie etwas davon in den Namespace.

Zum Beispiel:

EventModelSocketObjectReceivedEventArgs

wird

EventModel.Sockets.ReceivedEventArgs

10voto

Marc Gravell Punkte 970173

Nun, schaden die langen Namen etwas?

(edit) zwei weitere Gedanken:

  • verwenden. var in C# 3.0 - das spart die Hälfte der Breite
  • Wenn Sie den Typ mehrfach in einer Datei verwenden, sollten Sie einen Typ-Alias in Betracht ziehen, wenn er Sie stört:

    using Fred = Namespace.VeryLongNameThatIsBeingAnnoying;

9voto

Pat Punkte 5260

Ich würde einfach vorschlagen, die prägnanteste Bezeichnung zu verwenden, die das Objekt beschreibt. Wenn EventModelSocketObjectReceivedEventArgs macht das, macht weiter. Meine 2 Cents.

4voto

Don Branson Punkte 13410

Vor Jahren, als ich einen Programmierkurs besuchte, zitierte der Professor die Statistik, dass ein Stück Code in der Regel 600 Mal für jede einzelne Änderung gelesen wird. Heutzutage würde ich davon ausgehen, dass dies nicht mehr stimmt, insbesondere in TDD-Umgebungen, in denen viel Refactoring betrieben wird. Dennoch denke ich, dass ein bestimmtes Stück Code immer noch viel öfter gelesen als geschrieben wird. Daher denke ich, dass die Maxime, dass wir für die Lesbarkeit schreiben sollten, immer noch gültig ist. Die vollständige Form eines Wortes in einem Namen ist besser lesbar, da das Gehirn die Umwandlung nicht vornehmen muss. Das Verstehen ist schneller und genauer.

Die heutigen Werkzeuge machen dies mit Autovervollständigung und ähnlichem sehr einfach. Aus diesem Grund verwende ich jetzt ganze Wörter in Variablennamen, und ich denke, das ist ein guter Weg zu gehen.

2voto

Jim Petkus Punkte 4452

Wenn Sie so viel Aufwand betreiben müssen, um einen alternativen Namen zu finden, haben Sie bereits den richtigen Namen. Objekt-/Methoden-/Eigenschaftsnamen sollten selbstdokumentierend sein. Wenn sie nicht ihren genauen Zweck beschreiben, sind sie falsch benannt. Es ist nichts gegen lange Namen einzuwenden, wenn sie den Zweck des Objekts möglichst klar beschreiben.

Im Zeitalter von Intellisense und großen Monitoren gibt es wirklich keine Entschuldigung mehr dafür, dass man bei der Benennung nicht so beschreibend wie möglich ist.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X