اتفاقيات التسمية: "الدولة" مقابل "الحالة" [مغلقة

StackOverflow https://stackoverflow.com/questions/1162816

  •  18-09-2019
  •  | 
  •  

سؤال

سؤال سريع: أود أن أسمع أفكارك عند استخدام "الحالة" مقابل "الحالة" عند تسمية كلا الحقلين مثل "foo.currentstate" مقابل "foo.status" وأنواع، مثل "Enum foostate" vs "ENUM foostatus ". هل هناك اتفاقية ناقشت هناك؟ يجب أن نستخدم واحدة فقط؟ إذا كان الأمر كذلك أي واحد، وإذا لم يكن كذلك، كيف نختار؟

هل كانت مفيدة؟

المحلول

ذلك يعتمد على السياق

تشير الدولة عموما إلى دولة كيان بأكملها - جميع قيمها وعلاقاتها في وقت معين (عادة، الحالية)

الحالة هي أكثر من نقطة زمنية، كما يقول، حيث يوجد شيء في عملية أو سير عمل - هل هو القذرة (وبالتالي تتطلب الحفظ)، هل هو كامل، هل هو في انتظار المدخلات، إلخ

آمل أن يساعدك في قرارك.

نصائح أخرى

IMO:

الحالة == كيف حالك؟ [جيد سيئ

الدولة == ماذا تفعل؟ [يستريح / العمل

عادة ما سأستخدم الحالة لتعني الحالة الحالية للكائن أو النظام ككل. يمكنني استخدام الحالة لتمثيل نتائج بعض الإجراءات. على سبيل المثال، قد يتم حفظ حالة الكائن / غير المحفوظة / غير صالحة. الحالة (النتيجة) من الطريقة ناجحة / غير ناجحة / خطأ. أعتقد أن هذه Jibes جيدا مع تعريف الحالة باسم "حالة أو حالة فيما يتعلق بالظروف"الظروف في هذه الحالة هي تطبيق إجراء / طريقة.

آخر (براغماتي تماما) سبب تفضيل الحالة حول الحالة هو أن الجمع واضحة:

  • الدولة -> الدول
  • الحالة -> الحالات

وصدقوني، سوف يكون لديك وقت قريب أو في وقت لاحق قائمة أو مجموعة أو أيا كانت الدول في التعليمات البرمجية الخاصة بك وسيتعين عليها تسمية المتغير.

أعتقد أن العديد من الأشخاص يستخدمون "الحالة" لتمثيل حالة كائن إذا لم يكن هناك سبب آخر من "الدولة" يشير إلى تقسيم سياسي للولايات المتحدة.

أعتقد أنك يمكن أن تضيف وجهة نظر أخرى إلى المعادلة، وهي "طلب المرسل".

من منظور المرسلين، كنت أبلغ أولتي بأي شخص على استعداد للاستماع. بينما من منظور مقاعدين، سأطلب وضع شخص ما.

كما يجب تفسير ما سبق من وجهة نظر عدم اليقين: - محددة = الحالة - غير محدد = الحالة ما هو حالتك؟ أنا في حالة مريحة.

أنا متأكد من أن هذا مجرد ترجمة واحدة فقط، والتي قد لا تنطبق على وضعك الخاص.

يكشف فحص القاموس السريع أن الحالة عبارة عن مرادف للحالة، ولكن لديها تفسير إضافي موقف بالنسبة لتلك الأخرى.

لذلك سوف تستخدم حالة لمجموعة من الدول التي لا تملك أي أمر ضمني أو موقف بالنسبة لبعضها البعض، و الحالة بالنسبة لأولئك الذين يفعلون (ربما خارج وضع التشغيل؟). لكنه تمييز جيد.

الكثير من الكيانات التي أتعامل معها مع (الحسابات، العملاء) قد يكون لها حالة (TX، VA، وما إلى ذلك) وحالة (نشطة، مغلق، إلخ)

لذلك النقطة حول مصطلح كونها مضللة ممكنة. لدينا اتفاقية تسمية قاعدة بيانات موحدة (وليس خياري الشخصي) حيث يتم تسمية الدولة ST_CD وحالة ستكون ACCT_STAT_CD.

مع المعين في MiLieux، هذه المشكلة ليست مهمة، لأن لديك سلامة من النوع الصارم، سيضمن المحول البرمجي عدم قيام أحد يحاول القيام بذلك:

theCustomer.State = Customer.Status.Active;

إذا كنت في بيئة ديناميكية، سأكون أكثر قلقا!

إذا كنت تتعامل مع مجال حيث توجد آلات الدولة أو معلومات الدولة الأخرى وأن المصطلحات هي الغالب، فما أعتقد أن الحالة جيدة تماما.

كان لدينا هذا النقاش الدقيق في مشروعي الحالي لفترة طويلة. أنا حقا ليس لدي تفضيل، لكن الاتساق هو اعتبار مهم.

الأول (هناك عدة) تعريف "الدولة" في بلدي Sharp PW-E550 (قاموس رائع، قد أضيف) هو "الحالة المعينة التي يكون فيها شخص ما أو شيء ما في وقت محدد". التعريف الأول ل "الحالة" هو "الوظيفة الاجتماعية أو المهنية أو غيرها من شخص ما أو شيء ما". حتى التعريف الثاني (والأخير) من "الحالة" أدنى من "الدولة" في هذا السياق: "موقف الشؤون في وقت معين، ESP. في السياقات السياسية أو التجارية".

لذلك إذا أردنا أن تكون سهلة قدر الإمكان بالنسبة لشخص ما باستخدام قاموس (يستخدم قاموس أكسفورد الأمريكي الجديد، 2001)، فسيكون "الدولة" هو الخيار الأفضل.

علاوة على ذلك، هناك نمط تصميم موصوف في عصابة كتاب أربعة يسمى نمط الدولة، وإنشاء بحزم المصطلح في معجم الحوسبة.

لهذه الأسباب أقترح "الدولة".

PS هل هذا ddm؟ هل ما زلت مرارة حول "الحالة" مقابل "الحالة"؟ !!!!!!! انفجرت من الضحك!

حسنا، أنها تعني نفس الشيء. لا أعتقد أنه من الضروري إصدار تفضيل كبير واحد على الآخر، لكنني سأذهب عموما مع "الحالة"، لأنني أحب الأشياء التي تبدو latinate والكلاسيكية. أقصد، في عالمي، صيغة المخطط هو مخططات، لذلك لا توجد طريقة أخرى إلى حد كبير للذهاب، معي.

Sophistifunk، أنا متأكد من أنك ستحصل على حجج لكل من الدولة والحالة. أهم شيء يجب القيام به هو أنك تختار واحدة واستخدام واحد فقط. أود أن أقترح مناقشة هذا مع فريقك ومعرفة ما يوافقه الجميع على.

ومع ذلك، اقتراحي على النحو التالي.

على افتراض أنك تستخدم لغة برمجة موجهة للكائنات، يتم تمثيل "حالة" كائن "من قبل الكائن نفسه. simoobject.state هو مضلل المنظمة البحرية الدولية. لست متأكدا من ما تمثل "الحالة" في مثالك، لكن حدستي الطبيعية هو تفضل هذا الأمر.

ليس الشيء نفسه على الإطلاق. توقف وبدأت الدول. التوقف والبدء هي الحالة.

إذا كنت تجعلهم نفس الشيء كيف تصف السيارة كما توقفت ولكنها بدأت حاليا. أو تطبيق كما تم تقديمه حاليا ولكن لم يدخل بعد عملية الموافقة أو يتم اعتماده ولكنه قيد الانتظار حاليا مع حالة خطأ في انتظار التوقيع؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top