2011-01-17 14 views
2

Ich möchte einige Best-Practice-Tipps zur Benennung einer C# -Klasse geben, die mit einem iSeries-Webdienst interagiert. Ich denke entweder an iSeriesServiceProxy oder ISeriesServiceProxy, aber jeder hat seine (wahrscheinlich offensichtlichen) Probleme. Ersteres verletzt "Klassennamen sollten mit einem Großbuchstaben beginnen", während Letzteres wie eine Schnittstelle aussieht. Ich könnte mir einfach einen anderen Namen für diese Klasse ausdenken, aber das ist derjenige, der sich richtig anfühlt. Welches (wenn) ist die richtige Wahl?Starten eines C# -Klassennamens mit einem Kleinbuchstaben

+1

Ich fühle deinen Schmerz, mein Produktname beginnt mit "i" und es ist immer ein Kampf. – Greg

+0

Nennen Sie es 'AaiSeriesServiceProxy'. Nur phonetisch: P –

+0

AyeSeriesServiceProxy wäre perfekt für "Sprechen Sie wie ein Piratentag!" :-) – Richard

Antwort

6

Wählen Sie einen Namen basierend auf der Funktion des Web-Service, nicht die verwendete Technologie.

+0

Das ist ein guter Punkt, aber die Funktion des Webdienstes, den ich verwende, ist das Senden von Daten an einen iSeries-Server. Der eigentliche Name des Dienstes beginnt mit "iSeries". Bin ich fest oder vermisse etwas Offensichtliches? – Richard

+0

@Richard - Sie können Ihre Klassen benennen, was Sie wollen. Wenn der Dienst Wetterinformationen bereitstellt, würde ich ihn "WeatherService" nennen, unabhängig davon, was die eigentlichen Dienstproxys aufgerufen haben. – Oded

1

Ich glaube, dass Sie sich für den Klassennamen entscheiden sollten, der am besten mitteilt, was hinter der Klasse steckt. Selbst wenn es "richtig" wäre, es als ISeriesServiceProxy zu bezeichnen, würde ich diesen Namen nicht wählen und stattdessen ServiceProxyForISeries oder ähnliches verwenden. Dies führt zu weniger Verwirrung mit Ihren Kollegen!

0

Es gibt hier nicht wirklich eine "richtige" Antwort - persönlich würde ich den ersten Buchstaben der Klasse großschreiben, unabhängig davon, ob er mit einem "I" beginnt oder nicht. Wenn Sie nicht daran interessiert sind, würde ich das Kleinbuchstabe "i" vom Anfang des Klassennamens ablegen, so dass es nur "SeriesServiceProxy" heißt.

0

"iSeries" wie im Nachfahren der alten AS/400-Serie? Das sollte nicht Teil des Namens sein. Sie sind agnostisch gegenüber der Maschine, auf der der Dienst läuft. Die Frage ist: Was macht der Dienst? Hier sollten Sie Inspiration für einen richtig groß geschriebenen Namen finden.

+0

Es ist nicht so, dass der Dienst auf einem iSeries (ja, neuer (ish) Name für ein AS/400 läuft, ich glaube der neue (est) Name ist System I oder so), es ist der Service spricht mit einem iSeries Server. – Richard

+0

Okay, aber was spricht es mit dem Server? Fast sicher spielt der spezifische Server-Typ keine Rolle (stellen Sie sich vor, dass es sich um die Gehaltsabrechnung handelt und der Backend-Dienst auf einer iSeries, aber auf einem AS/400; der richtige Name ist 'PayrollService', nicht' AS400Service' oder 'AS400PayrollService' oder 'ISeriesService' oder' ISeriesPayrollService'). Nimm den Namen von dem, was der Dienst tut, nicht von dem, was den Dienst ausführt. – jason

Verwandte Themen