Frage

Kurze Frage: Ich mag Ihre Gedanken hören, wenn „Staat“ im Vergleich zu „Status“ zu verwenden, wenn beide Felder wie „Foo.currentState“ vs „Foo.status“ und Typen zu nennen, wie „Enum FooState“ vs "enum FooStatus". Gibt es eine Konvention dort diskutiert? Sollten wir nur verwenden? Wenn ja, welche, und wenn nicht, wie sollen wir wählen?

War es hilfreich?

Lösung

Es hängt vom Kontext ab

Staat im Allgemeinen bezieht sich auf den gesamten Zustand eines Unternehmens - alle ihre Werte und Beziehungen zu einem bestimmten Zeitpunkt (in der Regel, Strom)

Status ist eher ein Zeitpunkt, sagen wir, wo etwas an in einem Prozess oder Workflow ist - ist es schmutzig (daher erfordert Einsparung), ist es abgeschlossen ist, wird es anhängige Eingang, etc

Ich hoffe, das hilft Ihnen bei Ihrer Entscheidung.

Andere Tipps

IMO:

Status == Wie geht es Ihnen? [Gut / schlecht]

Zustand == was machst du da? [Ruhe / Arbeits]

Normalerweise werde ich Staat verwenden den aktuellen Zustand eines Objekts oder das System als Ganzes zu verstehen. Ich benutze Status das Ergebnis einer Aktion darstellen. Zum Beispiel kann der Zustand eines Objekts gespeichert / nicht gespeichert, gültig / ungültig. Der Status (Ergebnis) eine Methode ist erfolgreich / erfolglos / Fehler. Ich denke, das ist ziemlich gut mit der Definition des Status Halsen als „ Zustand oder die Bedingung in Bezug auf Umstände ,“die Umstände in diesem Fall ist die Anwendung einer Maßnahme / Methode.

Ein anderer (ganz pragmatisch) Grund Zustand über den Status zu bevorzugen ist, dass der Plural ist einfach:

  • Zustand -> Staaten
  • Status -> Status

Und glauben Sie mir, Sie werden früher oder später über eine Liste oder ein Array oder was auch immer von Staaten im Code und wird die Variable zu nennen haben.

Ich denke, viele Menschen „Status“ verwenden, den Zustand eines Objekts darstellen, wenn aus keinem anderen Grund als „Staat“ zu einer politischen Teilung der Vereinigten Staaten bezieht.

Ich denke, man eine andere Perspektive auf die Gleichung hinzufügen könnte, nämlich ‚Absender-Anforderer‘.

Von einem Absender Perspektive, würde ich meinen Zustand mit jemandem bereit ist, zuzuhören kommunizieren. Während von einer Anforderer Perspektive, würde ich für jemanden, den Status fragen.

Das oben könnte auch aus einer Unsicherheit Sicht interpretiert werden: - Definierte = Zustand - Nicht definiert = Status Was ist dein Status? Ich bin in einem entspannten Zustand.

Ich bin mir ziemlich sicher, dass dies nur eine Interpretation, die auf Ihre besondere Situation nicht gelten.

Eine schnelle Wörterbuch Überprüfung heraus, dass Status als Synonym für den Zustand, hat aber eine zusätzliche Interpretation von eine Position in Bezug auf die der anderen .

So würde ich verwenden Staat für eine Reihe von Staaten, die jede implizite Ordnung oder Position nicht relativ zueinander haben, und Status für diejenigen, die (vielleicht tun off-Standby-on?). Aber es ist eine feine Unterscheidung.

Eine Menge der Einheiten I mit (Konten, Kunden) umgehen kann einen Staat hat (TX, VA, etc.) und einen Status (aktiv, geschlossen, etc.)

So ist der Punkt, um den Begriff irreführend sein kann. Wir haben eine standardisierte Datenbank Namenskonvention (nicht meine persönliche Wahl), wo ein Staat ST_CD genannt wird und ein Status ACCT_STAT_CD würde.

Mit einem Enum in einem OO-Milieus, ist dieses Problem nicht so wichtig, denn wenn Sie strengen Typsicherheit haben, wird dafür sorgen, der Compiler, dass niemand dies zu tun versucht:

theCustomer.State = Customer.Status.Active;

Wenn Sie in einem dynamischen Umfeld sind, würde ich mehr Sorgen!

Wenn Sie mit einer Domain handeln, wo Zustandsmaschinen oder andere Zustandsinformationen und die Terminologie vorherrscht, dann würde ich denke Staat ist völlig in Ordnung.

Wir hatten genau diese Debatte über eine aktuelles Projekt eine Weile zurück. Ich habe keine Präferenz haben wirklich, aber die Konsistenz ist ein wichtiger Gesichtspunkt.

Die erste (es gibt mehrere) Definition des Begriffs „Staat“ in meinem Sharp PW-E550 (ein geiles Wörterbuch, wie ich hinzufügen möchte) ist „die besondere Bedingung, dass jemand oder etwas in zu einem bestimmten Zeitpunkt.“ Die erste Definition von „Status“ ist „die relative sozialen, beruflichen oder anderen stehend von jemand oder etwas“. Auch die zweite (und letzte) Definition von „Status“ schlechter als „Staat“ in diesem Zusammenhang: „. Die Lage der Dinge zu einer bestimmten Zeit, besonders in politischen oder kommerziellen Kontexten“

Also, wenn wir wollten, es so einfach wie möglich sein für jemanden in meinem Wörterbuch verwendet (es verwendet das New Oxford American Dictionary, 2001), „Staat“ wäre die beste Wahl.

Darüber hinaus gibt es ein Design-Muster im Gang of Four Buch beschrieb das State-Muster genannt, fest den Begriff im Computerlexikon zu etablieren.

Aus diesen Gründen schlage ich vor, "Staat".

P. S. Ist das Sie DDM? Sind Sie immer noch bitter über „Staat“ versus „Status“? !!!!!!! LMAO!

Nun, sie tun das gleiche bedeuten. Ich glaube nicht, es ist notwendig, eine große Vorliebe des einen über den anderen zu verkünden, aber ich würde generell gehen mit „Status“, weil ich Dinge wie das Latinate und klassizistische klingen. Ich meine, in meiner Welt, der Plural von Schema Schemen ist, so dass es so ziemlich kein anderer Weg für sie zu gehen, mit mir.

Sophistifunk, ich bin sicher, dass Sie Argumente sowohl für Staat und den Status bekommen. Das Wichtigste, was zu tun ist, dass Sie eine auswählen, und verwenden Sie nur einen. Ich würde vorschlagen, diese mit Ihrem Team zu diskutieren und sehen, was sie alle einig, auf.

Das heißt, mein Vorschlag ist, wie folgt.

Angenommen, Sie eine objektorientierte Programmiersprache verwenden, wird ein Objekt der „Staat“ durch das Objekt selbst repräsentiert. SomeObject.state ist irreführend, imo. Ich bin mir nicht sicher, was „Status“ in Ihrem Beispiel darstellt, aber meine natürliche Intuition ist dies in dem Zustand zu bevorzugen.

Nicht die gleiche Sache überhaupt. Gestoppt und gestartet sind Zustände. Stoppen und Starten sind Status.

Wenn Sie sie ihnen die gleiche Sache machen, wie beschreiben Sie das Fahrzeug als gestoppt, sondern beginnt zur Zeit. Oder eine Anwendung wie zur Zeit eingereicht, aber noch nicht den Genehmigungsprozesses eingegeben oder genehmigt werden, sondern ist zur Zeit in der Warteschleife mit einem Fehlerzustand der Unterzeichnung warten?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top