Laden...

Basis-Namespace-Name gesucht

Letzter Beitrag vor 14 Jahren 12 Posts 3.614 Views
Basis-Namespace-Name gesucht

Hallo,

ich habe vor, eine Art Framework aufzubauen, welches zum einen die Lücken im .NET-Framework schließen soll, und dieses zum anderen erweitern soll.

Nun Suche ich analog zum .NET-System-Namespace einen passenden Namen für das o.g. Framework. Da dieses frei verfügbar und auch kommerziell einsetzbar sein soll (L-GPL), sollte es schon ein neutraler Begriff sein.

Ich komm' bisher einfach nicht über Worte wie 'AppFramework', 'caf' (Common Application Framework) oder 'Global' hinaus.

Bin gespannt, ob einer von euch eine Idee hat.

Nobody is perfect. I'm sad, i'm not nobody 🙁

ich würde auf die neutralität des root-namespaces pfeifen und an deiner stelle einfach "TomEssen...." nehmen.

das ändert alles ncihts an den lizenzen usw... wir haben in unserem projekt auch in der einen oder anderen datei ein "using DefinitivEinName.CoolerNamespace;"

soll heißen, das es jemanden der dein framework einsetzen will nciht abhalten wird und es ist eine gute eigenwerbung.

Wie wäre es mit "Additional.NET"?

Dann kannst Du sogar rein theoretisch so was machen wie

using Additional.System.Collections.Generic;

Da wird dann schon aus dem Namen klar, worum es geht - nämlich einen Zusatz zum Standard-.NET.

Wissensvermittler und Technologieberater
für .NET, Codequalität und agile Methoden

www.goloroden.de
www.des-eisbaeren-blog.de

Hallo,

@Golo Roden:
Additional klingt interessant, aber das System werde ich wohl weglassen.

@JAck30lena:
das mit der Eigenwerbung ist zwar auch ein guter Gedanke, aber z.B. Golo's Vorschlag beschreibt ja schon eher den Inhalt des Projekts, unter TomEssen beispielsweise kann man sich nichts vorstellen (auch wenn dann natürlich die Neugier ggf. dazu führt, dass man es sich anschaut).

Nobody is perfect. I'm sad, i'm not nobody 🙁

klar kann man sich ersmal unter timessen ncihts vorstellen aber kannst du dir etwas konkretes unter system vorstellen? 😃

für das beispiel mit dem additional wäre es dann "TomEssen.Collections.Generic" und dann hat man sehr wohl eine konkrete vorstellung.

Salute zusammen

Ich halte den eigenen Namen im Namespace für ein Produkt das allgemein genutzt werden soll relativ störend.
Darum habe ich das bei LightCore auch weggelassen.

Was ist bspw. wenn du das Projekt mal an jemand anderen übergibst.
Entweder arbeitet er mit deinem Namen weiter oder du hast komplett Breaking Changes.

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011

Ist aber die Microsoft-Vorgabe:

[Hersteller].[Produkt].[eigentlicher Namespace]

Siehe zB

Microsoft.Windows.Xyz

Wissensvermittler und Technologieberater
für .NET, Codequalität und agile Methoden

www.goloroden.de
www.des-eisbaeren-blog.de

An dem Namespace mag das belegbar sein, auch Namespaces anderer anbieter, aber wie wäre das zum Beispiel mit "System"? Das System erstellt ja nicht von selbst irgend welche Namespaces samt Klassen.

Allgemein ja, es ist vorgabe. Ich machs mir da immer einfach und setz meinen Vor+Nachnamen in Kürzel dahin. So quasi "PS".

Wissen ist nicht alles. Man muss es auch anwenden können.

PS Fritz!Box API - TR-064 Schnittstelle | PS EventLogManager |

System ist die Ausnahme von der Regel, ansonsten gilt diese Vorgabe aber eigtl generell.

Wissensvermittler und Technologieberater
für .NET, Codequalität und agile Methoden

www.goloroden.de
www.des-eisbaeren-blog.de

Hallo!

@inflames2k, Golo Roden:
Bzgl. dem System-Namespace denke ich mal, MS hat den bewusst so gewählt, damit dieser klein und einfach zu merken ist, und er zudem die Basis den gesamten Frameworks gereitstellt. Und da es in diesem Falle auch mehrere Implementierungen gibt (z.B. Mono), wäre ein Herstellername dafür ungeeignet (ob MS dabei bewusst daran gedacht hat, kann ich aber nun nicht sagen).

Edit: Ich werde wohl die Namespace-Variante [Hersteller].[Produkt].[...] wählen, wobei ich noch überlege, was ich bei Hersteller eintrage.

Nobody is perfect. I'm sad, i'm not nobody 🙁

Hallo,

tendiere nun zu folgendem Basis-Namespace: TD.Additional

Aufbauend darauf die Struktur für die ersten Sub-Namespaces
*TD.Additional.ComponentModel *TD.Additional.IO *TD.Additional.Log *TD.Additional.Runtime *TD.Additional.Xml

Zudem plane ich, einige Klassen, z.B. für Datumsfunktionen, direkt im Basis-Namespace zu plazieren.

Weitere größere Namespaces werden dann*TD.Additional.Configuration *TD.Additional.Data *TD.Additional.Net *TD.Additional.UI

Klingt das OK?

EDIT: Für die Naming Guidlines siehe Naming Guidelines
EDIT2: Td durch TD ersetzt, da sonst FxCop meckert.

Nobody is perfect. I'm sad, i'm not nobody 🙁

Fast ^^

XML müsstest Du korrekterweise als Xml schreiben, ansonsten passt es.

Die Regelung ist:

  • Generell Pascal Case
  • Abkürzungen sind verboten
  • Akronyme auch als Pascal Case, es sei denn, sie bestehen nur aus zwei Buchstaben, dann komplett groß (wie IO oder UI)

Wissensvermittler und Technologieberater
für .NET, Codequalität und agile Methoden

www.goloroden.de
www.des-eisbaeren-blog.de