Kod adalah bersih jika ia boleh difahami dengan mudah – oleh semua orang dalam pasukan. Kod bersih boleh dibaca dan dipertingkatkan oleh pembangun selain daripada pengarang asalnya. Dengan kebolehfahaman datang kebolehbacaan, kebolehubah, kebolehlanjutan dan kebolehselenggaraan.
Peraturan am
- Ikut konvensyen standard.
- Pastikan ia mudah bodoh. Lebih mudah sentiasa lebih baik. Kurangkan kerumitan sebanyak mungkin.
- Peraturan pengakap lelaki. Biarkan tapak perkhemahan lebih bersih daripada yang anda temui.
- Sentiasa cari punca. Sentiasa cari punca masalah.
Peraturan reka bentuk
- Simpan data boleh dikonfigurasikan pada tahap tinggi.
- Lebih suka polimorfisme daripada if/else atau tukar/case.
- Asingkan kod berbilang benang.
- Elakkan kebolehkonfigurasian yang berlebihan.
- Gunakan suntikan pergantungan.
- Ikut Hukum Demeter. Sesebuah kelas harus mengetahui hanya kebergantungan langsungnya.
Petua kefahaman
- Kekal konsisten. Jika anda melakukan sesuatu dengan cara tertentu, lakukan semua perkara yang serupa dengan cara yang sama.
- Gunakan pembolehubah penjelasan.
- Merangkum keadaan sempadan. Keadaan sempadan sukar dijejaki. Letakkan pemprosesan untuk mereka di satu tempat.
- Lebih suka objek nilai khusus daripada jenis primitif.
- Elakkan pergantungan logik. Jangan tulis kaedah yang berfungsi dengan betul bergantung pada sesuatu yang lain dalam kelas yang sama.
- Elakkan syarat negatif.
Peraturan nama
- Pilih nama deskriptif dan tidak jelas.
- Buat perbezaan yang bermakna.
- Gunakan nama yang boleh disebut.
- Gunakan nama yang boleh dicari.
- Gantikan nombor ajaib dengan pemalar bernama.
- Elakkan pengekodan. Jangan tambahkan awalan atau taip maklumat.
Peraturan fungsi
- Kecil.
- Lakukan satu perkara.
- Gunakan nama deskriptif.
- Pilih lebih sedikit hujah.
- Tiada kesan sampingan.
- Jangan gunakan hujah bendera. Pisahkan kaedah kepada beberapa kaedah bebas yang boleh dipanggil daripada klien tanpa bendera.
Peraturan ulasan
- Sentiasa cuba menerangkan diri anda dalam kod.
- Jangan berlebihan.
- Jangan tambah bunyi yang jelas.
- Jangan gunakan ulasan pendakap penutup.
- Jangan komen keluar kod. Keluarkan sahaja.
- Gunakan sebagai penjelasan tentang niat.
- Gunakan sebagai penjelasan kod.
- Gunakan sebagai amaran tentang akibatnya.
Struktur kod sumber
- Asingkan konsep secara menegak.
- Kod berkaitan sepatutnya kelihatan padat menegak.
- Isytiharkan pembolehubah hampir dengan penggunaannya.
- Fungsi bergantung harus dekat.
- Fungsi yang serupa sepatutnya dekat.
- Letakkan fungsi ke arah bawah.
- Pastikan baris pendek.
- Jangan gunakan penjajaran mendatar.
- Gunakan ruang putih untuk mengaitkan perkara yang berkaitan dan mengaitkan yang berkaitan dengan lemah.
- Jangan patahkan lekukan.
Objek dan struktur data
- Sembunyikan struktur dalaman.
- Lebih suka struktur data.
- Elakkan struktur hibrid (separuh objek dan separuh data).
- Hendaklah kecil.
- Lakukan satu perkara.
- Bilangan kecil pembolehubah tika.
- Kelas asas sepatutnya tidak tahu apa-apa tentang terbitan mereka.
- Lebih baik mempunyai banyak fungsi daripada menghantar beberapa kod ke dalam fungsi untuk memilih tingkah laku.
- Lebih suka kaedah bukan statik daripada kaedah statik.
Ujian
- Satu penegasan setiap ujian.
- Boleh dibaca.
- Cepat.
- Berdikari.
- Boleh diulang.
Kod berbau
- Ketegaran. Perisian ini sukar untuk diubah. Perubahan kecil menyebabkan perubahan seterusnya.
- Kerapuhan. Perisian rosak di banyak tempat kerana satu perubahan.
- Imobilitas. Anda tidak boleh menggunakan semula bahagian kod dalam projek lain kerana melibatkan risiko dan usaha yang tinggi.
- Kerumitan Tidak Perlu.
- Pengulangan Tidak Perlu.
- Kelegapan. Kod ini sukar difahami.
Itu banyak yang saya rasa, Tetapi ada lagi.
Baca buku penuh.
Terima kasih kerana membaca Ringkasan, Semoga ia membantu.
Tapak web:
https://kaleemelahi.co
Beli Saya CoFee:
https://buymeacoffee.com/kaleemelahi
Atas ialah kandungan terperinci Ringkasan Kod Bersih. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Kenyataan:Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn