Saya sedang mengerjakan proyek perusahaan yang akan digunakan di banyak UKM dan Perusahaan.
Dukungan untuk proyek ini akan sulit dan saya ingin membuat pola pengkodean untuk kesalahan ( Seperti Kode status HTTP ). Ini akan memungkinkan orang meja bantuan untuk merujuk ke dokumen dan memecahkan masalah secepat mungkin.
Apa praktik terbaik dan rekomendasi untuk melakukan ini?
Bantuan apa pun untuk melakukan ini akan bermanfaat.
Jawaban:
Ada perbedaan antara kode kesalahan dan nilai pengembalian kesalahan. Kode kesalahan adalah untuk pengguna dan help desk. Nilai pengembalian kesalahan adalah teknik pengkodean untuk menunjukkan bahwa kode Anda mengalami kesalahan.
Seseorang dapat menerapkan kode kesalahan menggunakan nilai-nilai pengembalian kesalahan, tetapi saya akan menyarankan menentang itu. Pengecualian adalah cara modern untuk melaporkan kesalahan, dan tidak ada alasan mengapa mereka tidak boleh membawa kode kesalahan di dalamnya.
Ini adalah bagaimana saya mengaturnya (Perhatikan bahwa poin 2-6 adalah agnostik bahasa):
ErrorCode
properti tambahan . Tangkapan di loop utama akan melaporkan bidang ini dengan cara biasa (file log / error pop-up / error reply). Gunakan tipe pengecualian yang sama di semua kode Anda.if (...) throw new FooException(1234, ".."); else throw new FooException(1235, "..");
Baris sederhana dalam kode Anda mungkin menghemat setengah jam untuk help desk.Dan jangan pernah lupa bahwa tujuan kode kesalahan adalah untuk membuat hidup lebih mudah untuk help desk .
sumber
Doc1234
sementara Main-App dapat memilikiIrS1234
. Jadi rekan kerja-pembantu saya cukup cepat dengan membantu pengguna saya.Pertama-tama Anda harus mengisolasi area di mana kesalahan mungkin terjadi, dan dapat dilihat pengguna. Kemudian Anda dapat mendokumentasikannya. Sesederhana itu.
Yah, sederhana dalam teori .. dalam praktiknya kesalahan dapat terjadi di seluruh tempat sialan, dan melaporkannya dapat mengubah kode yang bagus menjadi monster logging, pengecualian melempar dan menangani, dan meneruskan nilai kembali.
Saya akan merekomendasikan pendekatan 2 langkah. Pertama adalah mencatat, mencatat banyak dan banyak.
Kedua adalah menentukan komponen utama dan antarmuka mereka, dan untuk menentukan kasus kesalahan utama apa yang dapat ditemukan komponen-komponen ini. Anda kemudian dapat masuk dengan cara yang lebih terlihat ketika salah satu dari kesalahan ini (bagaimana Anda menangani kesalahan secara internal terserah Anda. - pengecualian atau kode kesalahan tidak ada bedanya di sini). Seorang pengguna biasanya akan melihat kesalahan dan pergi ke log untuk informasi lebih rinci.
Pendekatan yang sama digunakan untuk server web dan contoh kode kesalahan http Anda. Jika pengguna melihat 404, dan melaporkannya untuk mendukung, mereka akan mencari di log untuk rincian apa yang sedang terjadi, halaman mana yang dikunjungi, kapan, dan akan mengumpulkan informasi lain yang mereka dapat dari mana pun masuk akal , berada di DB, jaringan atau aplikasi.
sumber
Saya akan pergi untuk pengecualian khusus dengan nama deskriptif dan pesan yang jelas dan membuangnya. Jauh lebih mudah untuk menggunakan infrastruktur pengecualian bahasa yang ada daripada membangun dukungan untuk melewati kode kesalahan dan menafsirkannya.
sumber