2014-01-16 11 views
6

Ich mag würde eine OO-Hierarchie von Fehlern und Warnungen an den Client während eines zurück bauen, sagen wir mal, Preise Betrieb:Was ist ein guter allgemeiner Begriff für Fehler und Warnungen?

interface PricingMessage {} 

interface PricingWarning extends PricingMessage {} 

interface PricingError extends PricingMessage {} 

class NoSuchProductError implements PricingError { 
... 
} 

ich auf den Namen PricingMessage nicht sehr daran interessiert bin. Was ist das Konzept, das Fehler und Warnungen enthält?

EDIT: Um klar zu sein, suche ich nach einem gemeinsamen Konzept oder Namen für Fehler und Warnungen speziell (mit Ausnahme von allgemeinen Info-Nachrichten). Zum Beispiel melden Compiler auch Fehler und Warnungen. Was ist das?

Antwort

0

In der Theorie könnten diese als Ereignisse definiert werden - also könnten Sie das verwenden.

0

Das ist sehr subjektiv, aber hier sind ein paar Vorschläge:

  • Ausgabe
  • LogEntry
3

Wenn Sie mit Java zu tun haben, oder ähnliche OO-Sprachen, das Wort, das Sie suchen denn wäre Exception. Dies bedeutet, dass Sie einen "außergewöhnlichen" Zustand erreicht haben, der kontrolliert behandelt werden muss.

+1

Die Art, wie ich "Warnung" verstehe, ist, dass die Operation erfolgreich war, aber etwas vor sich geht, das der Absicht des Clients widersprechen könnte. "Exception" bedeutet in Java, dass die ursprüngliche Operation eindeutig fehlgeschlagen ist. Zum Beispiel wäre es sinnvoll, wenn eine Methode ein Paar (result, warning) zurückgibt, während Methoden in Java entweder ein Ergebnis zurückgeben oder eine Ausnahme auslösen. – sandris

+0

Das ist sehr wahr. Wenn ich jedoch an eine Warnung denke, denke ich nicht wirklich darüber nach, ob sie Teil einer Struktur ist. Wenn die Warnung, die Sie bereitstellen möchten, einfach eine Nachricht ist, die der Benutzer nur lesen wird (im Gegensatz zu handle), würde ich einfach eine Zeichenfolge zurückgeben/drucken. Die Ausnahme wäre Teil der Struktur, die Sie erstellen, da der Benutzer möglicherweise etwas damit tun muss. – csmckelvey

+0

Warum haben Warnungen keine Struktur, genau wie Fehler? Wie Benutzer mit ihnen umgehen, ist ebenfalls eine interessante Frage, aber die interne Darstellung sollte in OO passen. (z. B. um aufzuzeichnen, welche Benutzer welche Warnungen generieren). – sandris

2

Durch Blick auf ein fewsynonymlists, fand ich folgendes:

  • Anomaly, Kuriosität, Abweichung
  • Alarm, Meldung, Mitteilung
  • Fehler, Fehltritt, Versagen, Glitch
2

Einige Vorschläge ...

Eine Operation hat Ergebnisse, die eine Anzahl von Fehlern, Warnungen, Notizen und expliziten oder impliziten (keine Fehler) Erfolg haben können.

PricingResult 

„Ausgabe“

Eine Operation lief, aber mit Problemen könnten von denen einige tödlich sein (Fehler) und von denen einige möglicherweise nicht (Warnungen). Wenn es keine Probleme gibt, ist der Erfolg impliziert.

PricingIssue 

"Bedingung"

Eine Operation kann in einem Fehlerzustand oder einen Warnzustand oder sein. Ich denke, einige Compiler verwenden "Bedingung" als einen abstrakten Begriff für einen Fehler oder eine Warnung.

PricingCondition 

"Diagnose"

Das Ergebnis einer Operation könnte die Diagnose für Fehler und Warnungen enthalten. Ein anderer Compiler-Begriff, glaube ich.

PricingDiagnostic 
0

Ich bevorzuge den Namen Alert. Eine Alarm-IMO kann ein kritisches Niveau aufweisen, sie kann als informativ, Warnung, kritisch oder auf einem anderen für angemessen erachteten Level identifiziert werden.

Das Gegenargument, das ich zu dieser Namensgebung gehört habe, ist die Idee, dass die Warnung dem Substantiv zu eng folgt, um das Verb zu alarmieren, wobei die Unterscheidung gemacht wird, dass das Objekt (Nomen) oder viele noch nicht zur Aufmerksamkeit des Benutzers gebracht wurden (Verb). In diesem Kontext könnte die Benennung von Alerts zu einem gewissen Grad an kognitiver Dissonanz und möglicherweise zu Verwirrung für Entwickler führen, die über Ihren Code nachdenken.

Das Beste, was ich würde vorschlagen, kann eine harte Unterscheidung zu schaffen, in Ihrer Code-Basis zwischen Alert (das Objekt des Ausnahmezustandes) und Notification (der Akt zu bringen, die Benachrichtigung an den Benutzer Aufmerksamkeit) gemacht werden, um Dinge zu halten, intuitive für Programmierer bewegen sich vorwärts.

Verwandte Themen