2008-09-23 9 views
5

So habe ich logische Entitäten (Person, Land, etc.), GUI-Elemente/Steuerelemente, Daten und Navigation Controller/Manager, dann Dinge wie Quad-Bäume und Timer, und ich habe immer mit sauber trennen diese Dinge in logische Namespaces.Wie organisieren Sie Ihre Namespaces?

Normalerweise habe ich so etwas wie dieses:

  • Leviathan.GUI.Controls
  • Leviathan.GUI.Views
  • Leviathan.Entities
  • Leviathan.Controllers (Daten und andere Sachen)
  • Leviathan.Helpers (Bäume und andere Sachen)

Gibt es dazu gute Anleitungen? Ich muss dieses Chaos stoppen.

Antwort

2

Versuchen Sie, die "und andere Sachen" oder "misc." Kategorien, Wenn Sie Dinge in diese Kategorien setzen, versäumen Sie es wirklich, sie überhaupt zu organisieren.

+0

meine Gedanken, ich habe nur schwer einen Platz für Datenstrukturen zu finden, die ich selten verwende, aber immer noch notwendig sind, wie ein QuadTree oder BinaryTree ... – kitsune

+0

Hey, tut mir leid, ich habe gerade die Kommentarbox bemerkt !! Habe gerade diese Funktion gefunden. Ich würde mich bemühen, etwas zu finden, das ein gemeinsamer Faden zwischen mindestens zwei von ihnen ist. Wenn es nicht mit anderen Namensräumen gemeinsam ist, kann es kategorisiert werden. Aber oultine rule # 1 no A ohne B. hoffe das hilft – Patcouch22

3

Für Anwendungen

Company.Product.Tier.Sub.Sub 

wo ich Tier bekommen von Model, View, Controller oder anderen etablierten Namen (Data)

Aber für unsere Kontrollen, landen wir mit

Company.Product.LogicalFeatureGrouping 

oder

Company.Product.Addon 

manchmal ist es

Company.Product.LogicalFeatureGrouping.Addon 
0

ich die Java/Python ideal folgen, die Namespaces, die Verzeichnisstruktur folgen sollte.

+1

welches uns zu folgender Frage führen würde: Wie du deine Verzeichnisstruktur organisierst :) Ich mache das gleiche, meine Namespaces sind an die Ordnerstruktur gebunden – kitsune

+0

ich glaube ich lese ein Standard irgendwo über Domains ... wie mit einer Top-Level-Domain (org, com. gov, mil) anfangen und zum Projektnamen und seinen Subkomponenten gehen. –

1

Ich erstelle normalerweise einen Namespace für jede einzelne Ebene, wie UI, Geschäftslogik und Datenbank. Es zwingt mich, die Stufen zu trennen. Ich erstelle andere Namensräume in ihnen nach Systemkomponenten.

Verwandte Themen