Pertanyaan cepat: Saya ingin mendengar pendapat Anda tentang kapan harus menggunakan "Status" versus "Status" saat memberi nama kedua bidang seperti "Foo.currentState" vs "Foo.status" dan ketik, seperti "enum FooState" vs "enum Status Foo ". Apakah ada kebaktian yang dibahas di sana? Haruskah kita menggunakan satu saja? Jika demikian yang mana, dan jika tidak, bagaimana kita memilih?
naming-conventions
nomenclature
Sophistifunk
sumber
sumber
Jawaban:
Itu tergantung pada konteksnya
Negara umumnya mengacu pada seluruh keadaan suatu entitas - semua nilai dan hubungannya pada titik waktu tertentu (biasanya, saat ini)
Status lebih merupakan titik waktu, katakanlah, di mana ada sesuatu dalam proses atau alur kerja - apakah kotor (karena itu memerlukan penyimpanan), apakah lengkap, apakah masih menunggu input, dll.
Saya harap ini membantu Anda dalam keputusan Anda.
sumber
IMO:
status == apa kabar? [baik / buruk]
negara == apa yang kamu lakukan? [istirahat / bekerja]
sumber
State
harus mencerminkan "node yang ditunjukkan" dalam grafik node state-machine (atau workflow) state, di mana deskripsi mungkin dengan mudah menjadi kata sifat verbal (sering berakhir dengan " -ing "), sedangkanStatus
adalah properti sederhana dari objek, kata sifat sederhana, yang dapat digunakan oleh pemicu atau sebagai nilai yang diamati untuk keputusan untuk mengubah (atau menjaga) keadaan. Saya mungkin terlalu memikirkannya. Saya melakukan itu ..Biasanya saya akan menggunakan State untuk mengartikan kondisi saat ini dari suatu objek atau sistem secara keseluruhan. Saya menggunakan status untuk mewakili hasil dari beberapa tindakan. Misalnya, keadaan suatu objek dapat disimpan / tidak disimpan, valid / tidak valid. Status (hasil) dari suatu metode berhasil / tidak berhasil / salah. Saya pikir jibes ini cukup baik dengan definisi status sebagai " negara atau kondisi sehubungan dengan keadaan ," keadaan dalam kasus ini adalah penerapan suatu tindakan / metode.
sumber
Alasan lain (sepenuhnya pragmatis) untuk lebih memilih status daripada status adalah bahwa jamak itu jelas:
Dan percayalah, cepat atau lambat Anda akan memiliki daftar atau larik atau status apa pun dalam kode Anda dan harus memberi nama variabel.
sumber
Saya pikir banyak orang menggunakan "Status" untuk mewakili keadaan suatu objek jika tanpa alasan lain selain "Negara" mengacu pada pembagian politik Amerika Serikat.
sumber
Saya pikir Anda bisa menambahkan perspektif lain ke persamaan, yaitu 'pengirim-pemohon'.
Dari sudut pandang pengirim, saya akan mengomunikasikan keadaan saya dengan siapa pun yang mau mendengarkan. Sementara dari sudut pandang pemohon, saya akan meminta status seseorang.
Hal di atas juga bisa ditafsirkan dari sudut pandang ketidakpastian:
Apa statusmu Saya dalam keadaan santai.
Saya cukup yakin ini hanya satu interpretasi, yang mungkin tidak berlaku untuk situasi khusus Anda.
sumber
Pemeriksaan kamus cepat mengungkapkan bahwa status adalah sinonim untuk keadaan, tetapi memiliki interpretasi tambahan tentang posisi relatif terhadap yang lain .
Jadi saya akan menggunakan negara untuk satu set negara yang tidak memiliki urutan atau posisi implisit relatif satu sama lain, dan status untuk mereka yang melakukannya (mungkin off-standby-on?). Tapi itu perbedaan yang bagus.
sumber
Banyak entitas yang saya tangani (akun, pelanggan) mungkin memiliki Status (TX, VA, dll.) Dan Status (Aktif, Tertutup, dll.)
Jadi poin tentang istilah yang menyesatkan adalah mungkin. Kami memiliki konvensi penamaan basis data standar (bukan pilihan pribadi saya) di mana suatu negara dinamai
ST_CD
dan statusnya akan seperti ituACCT_STAT_CD
.Dengan enum di milieux OO, masalah ini tidak begitu penting, karena jika Anda memiliki keamanan tipe yang ketat, kompiler akan memastikan bahwa tidak ada yang mencoba melakukan ini:
Jika Anda berada di lingkungan yang dinamis, saya akan lebih khawatir!
Jika Anda berurusan dengan domain di mana mesin negara atau informasi negara lainnya dan terminologi itu dominan, maka saya akan berpikir Negara baik-baik saja.
sumber
Kami memiliki debat yang tepat tentang proyek saya saat ini beberapa waktu lalu. Saya benar-benar tidak punya preferensi, tetapi konsistensi adalah pertimbangan penting.
Definisi pertama "(ada beberapa)" keadaan "di Sharp PW-E550 saya (kamus yang bagus, saya dapat tambahkan) adalah" kondisi khusus di mana seseorang atau sesuatu berada pada waktu tertentu. " Definisi pertama "status" adalah "status sosial, profesional, atau status relatif seseorang atau sesuatu". Bahkan definisi "status" kedua (dan terakhir) lebih rendah daripada "negara" dalam konteks ini: "posisi urusan pada waktu tertentu, terutama dalam konteks politik atau komersial."
Jadi, jika kita menginginkannya semudah mungkin bagi seseorang yang menggunakan kamus saya (ini menggunakan New Oxford American Dictionary, 2001), "negara" akan menjadi pilihan terbaik.
Selain itu, ada pola desain yang dijelaskan dalam buku Gang of Four yang disebut Pola Negara, yang dengan kuat menetapkan istilah dalam leksikon komputasi.
Untuk alasan ini saya sarankan "negara".
PS Apakah itu Anda DDM? Apakah Anda masih pahit tentang "status" versus "status"? !!!!!!! LMAO!
sumber
Ya, mereka memiliki arti yang sama. Saya tidak berpikir perlu untuk mengumumkan preferensi besar satu dari yang lain, tapi saya biasanya akan pergi dengan "status", karena saya suka hal-hal yang terdengar Latinate dan klasik. Maksud saya, di dunia saya, bentuk jamak dari skema adalah schemata, jadi tidak ada cara lain untuk itu, dengan saya.
sumber
Sophistifunk, saya yakin Anda akan mendapatkan argumen untuk Status dan Negara. Yang paling penting untuk dilakukan adalah Anda memilih satu, dan hanya menggunakan satu. Saya sarankan mendiskusikan hal ini dengan tim Anda dan melihat apa yang disetujui semua orang.
Yang mengatakan, saran saya adalah sebagai berikut.
Dengan asumsi Anda menggunakan bahasa pemrograman berorientasi objek, "keadaan" objek diwakili oleh objek itu sendiri. SomeObject.state menyesatkan imo. Saya tidak yakin apa yang "status" wakili dalam contoh Anda, tetapi intuisi alami saya adalah lebih suka menyatakan ini.
sumber
Bukan hal yang sama sekali. Berhenti dan mulai adalah status. Berhenti dan mulai adalah status.
Jika Anda membuat mereka hal yang sama bagaimana Anda menggambarkan kendaraan itu berhenti tetapi saat ini mulai. Atau aplikasi yang saat ini diajukan tetapi belum memasuki proses persetujuan atau sedang disetujui tetapi saat ini ditahan dengan kondisi kesalahan menunggu tanda tangan?
sumber
Starting
memang benar-State
benar berbeda dariStopped
. Itu tergantung pada semantik sistem Anda . Periksa, misalnya, Layanan Windows.