Rumah pembangunan bahagian belakang Tutorial Python Kod Kotor: Peraturan Mudah untuk Mengelaknya

Kod Kotor: Peraturan Mudah untuk Mengelaknya

Dec 20, 2024 am 04:35 AM

Dirty Code: Simple Rules to Avoid It

Setiap pembangun pernah menghadapinya: kod kotor—jenis kod yang kelihatan seperti ditulis dengan tergesa-gesa, ditaburi dengan nombor ajaib, blok pendua dan nama pembolehubah samar. Ia berfungsi... hampir tidak. Tetapi mengekalkannya? Itu mimpi ngeri.

Jika anda pernah merungut dalam nafas anda semasa memfaktorkan semula kod orang lain (atau pun anda sendiri), artikel ini adalah untuk anda. Berikut ialah beberapa peraturan mudah untuk memastikan kod anda bersih, boleh dibaca dan kalis masa hadapan.

Apakah Kod Kotor?
Kod kotor ialah kod yang:

  • Sukar untuk dibaca atau difahami.
  • Kurang struktur dan konsistensi.
  • Sukar untuk diubah suai atau nyahpepijat tanpa melanggar sesuatu yang lain.

Ini selalunya berlaku apabila pembangun:

  1. Bekerja di bawah tarikh akhir yang ketat.
  2. Langkau ulasan kod.
  3. Jangan ikut amalan atau piawaian terbaik.

Mengapa Kod Kotor Menjadi Masalah?

  • Sukar untuk Nyahpepijat: Membetulkan satu pepijat boleh memperkenalkan lima pepijat yang lain.
  • Mahal untuk Diselenggara: Kod yang ditulis dengan buruk mengambil masa lebih lama untuk diperbaiki.
  • Kekeliruan Pasukan: Pembangun baharu menghabiskan masa tambahan hanya cuba memahami perkara yang berlaku. Kod kotor mungkin menyelesaikan tugas hari ini, tetapi ia adalah bom masa untuk pasukan anda dan diri masa depan anda.

Peraturan Mudah untuk Mengelak Kod Kotor

1. Ikut Prinsip Tanggungjawab Tunggal (SRP)
Setiap fungsi, kaedah atau kelas harus melakukan hanya satu perkara. Jika anda mendapati diri anda menulis kaedah dengan terlalu banyak tanggungjawab, pecahkannya kepada unit yang lebih kecil.

❌ Contoh Buruk:

def process_user_data(user):
    user['age'] = user['age'] + 1  
    db.save(user)  
    print(f"User {user['name']} updated")  

Salin selepas log masuk
Salin selepas log masuk

✅ Contoh Baik:

def update_user_age(user):
    user['age'] += 1  

def save_user_to_db(user):
    db.save(user)  

def log_user_update(user):
    print(f"User {user['name']} updated")  

Salin selepas log masuk
Salin selepas log masuk

Setiap fungsi kini mempunyai satu tugas yang jelas, menjadikan kod lebih mudah untuk diuji dan diubah suai.

2. Elakkan Nombor Ajaib dan Rentetan
Nilai berkod keras (“nombor ajaib”) menjadikan kod tidak boleh dibaca dan sukar untuk dikekalkan. Gunakan pemalar sebaliknya.

❌ Contoh Buruk:

if (statusCode === 404) {  
    console.log("Not Found");  
}

Salin selepas log masuk
Salin selepas log masuk

✅ Contoh Baik:

const NOT_FOUND = 404;

if (statusCode === NOT_FOUND) {  
    console.log("Not Found");  
}

Salin selepas log masuk

NOTE_FOUND yang berterusan adalah jelas, menjadikan kod anda lebih mudah dibaca.

3. Tulis Pembolehubah Deskriptif dan Nama Fungsi
Nama pembolehubah anda harus mencerminkan perkara yang diwakilinya. Elakkan singkatan dan nama samar.

❌ Contoh Buruk:

int a = 5;  
String s = "John";  

Salin selepas log masuk

✅ Contoh Baik:

int userAge = 5;  
String userName = "John";  

Salin selepas log masuk

Perkara yang sama berlaku untuk fungsi. Elakkan nama yang tidak jelas seperti doStuff() atau process(). Jadi khusus.

4. KERING (Jangan Ulangi Sendiri)
Jika anda menyalin dan menampal kod, anda salah melakukannya. Kod pendua menjadikan pembetulan pepijat menjadi mimpi ngeri. Logik berulang abstrak ke dalam fungsi atau kelas.

❌ Contoh Buruk:

print("Welcome, John")  
print("Welcome, Mary")  

Salin selepas log masuk

✅ Contoh Baik:

def process_user_data(user):
    user['age'] = user['age'] + 1  
    db.save(user)  
    print(f"User {user['name']} updated")  

Salin selepas log masuk
Salin selepas log masuk

5. Pastikan Fungsi Anda Singkat
Jika fungsi anda lebih panjang daripada 20-30 baris, ia melakukan terlalu banyak. Pecahkan kepada fungsi yang lebih kecil dan boleh diguna semula.

Fungsi yang panjang menjadikannya lebih sukar untuk memahami dan menguji tingkah laku tertentu.

6. Gunakan Komen dengan Berhemat
Tulis kod yang menerangkan dirinya sendiri. Gunakan komen hanya apabila perlu untuk menjelaskan logik yang kompleks. Elakkan komen yang menyatakan perkara yang jelas.

❌ Contoh Buruk:

def update_user_age(user):
    user['age'] += 1  

def save_user_to_db(user):
    db.save(user)  

def log_user_update(user):
    print(f"User {user['name']} updated")  

Salin selepas log masuk
Salin selepas log masuk

✅ Contoh Baik:
Jika kod anda jelas, tiada ulasan diperlukan:

if (statusCode === 404) {  
    console.log("Not Found");  
}

Salin selepas log masuk
Salin selepas log masuk

Gunakan ulasan untuk perkara seperti menjelaskan sebab keputusan tertentu dibuat, bukan perkara yang dilakukan oleh kod tersebut.

7. Format dan Susun Kod Anda

  • Ikuti panduan gaya pengekodan yang konsisten (cth., PEP8 untuk Python, ESLint untuk JavaScript).
  • Gunakan lekukan yang betul.
  • Kod berkaitan kumpulan bersama-sama. Pemformatan yang baik menjadikan kod bersih dan boleh dibaca tanpa sebarang usaha tambahan.

Pemikiran Pembangun: Tulis Kod untuk Manusia
Kod bukan sahaja ditulis untuk mesin; ia juga ditulis untuk manusia—rakan sepasukan anda, penyelenggara masa depan, atau anda sendiri enam bulan ke hadapan. Apabila anda menulis kod bersih:

  • Anda mengurangkan beban mental untuk orang lain.
  • Anda memudahkan untuk nyahpepijat, melanjutkan dan menambah baik.
  • Anda kelihatan seperti pembangun profesional yang mementingkan kualiti.

Pemikiran Akhir
Mengelakkan kod kotor tidak sukar—ia hanya memerlukan disiplin. Ikut peraturan mudah ini:

  1. Berpegang pada Prinsip Tanggungjawab Tunggal.
  2. Elakkan nombor ajaib.
  3. Gunakan nama yang jelas dan deskriptif.
  4. KERINGKAN kod berulang.
  5. Pastikan fungsi pendek.
  6. Gunakan komen dengan bijak.
  7. Formatkan kod anda secara konsisten.

Kod bersih bukan tentang kesempurnaan; ia mengenai menjadikan kerja anda boleh diselenggara dan difahami. Diri masa depan anda—dan pasukan anda—akan berterima kasih kepada anda.

Sekarang pergi dan faktorkan semula kod yang tidak kemas yang anda abaikan itu! ?

Atas ialah kandungan terperinci Kod Kotor: Peraturan Mudah untuk Mengelaknya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

<🎜>: Bubble Gum Simulator Infinity - Cara Mendapatkan dan Menggunakan Kekunci Diraja
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Sistem Fusion, dijelaskan
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1665
14
Tutorial PHP
1270
29
Tutorial C#
1249
24
Python vs C: Aplikasi dan kes penggunaan dibandingkan Python vs C: Aplikasi dan kes penggunaan dibandingkan Apr 12, 2025 am 12:01 AM

Python sesuai untuk sains data, pembangunan web dan tugas automasi, manakala C sesuai untuk pengaturcaraan sistem, pembangunan permainan dan sistem tertanam. Python terkenal dengan kesederhanaan dan ekosistem yang kuat, manakala C dikenali dengan keupayaan kawalan dan keupayaan kawalan yang mendasari.

Python: Permainan, GUI, dan banyak lagi Python: Permainan, GUI, dan banyak lagi Apr 13, 2025 am 12:14 AM

Python cemerlang dalam permainan dan pembangunan GUI. 1) Pembangunan permainan menggunakan pygame, menyediakan lukisan, audio dan fungsi lain, yang sesuai untuk membuat permainan 2D. 2) Pembangunan GUI boleh memilih tkinter atau pyqt. TKInter adalah mudah dan mudah digunakan, PYQT mempunyai fungsi yang kaya dan sesuai untuk pembangunan profesional.

Python vs C: Lengkung pembelajaran dan kemudahan penggunaan Python vs C: Lengkung pembelajaran dan kemudahan penggunaan Apr 19, 2025 am 12:20 AM

Python lebih mudah dipelajari dan digunakan, manakala C lebih kuat tetapi kompleks. 1. Sintaks Python adalah ringkas dan sesuai untuk pemula. Penaipan dinamik dan pengurusan memori automatik menjadikannya mudah digunakan, tetapi boleh menyebabkan kesilapan runtime. 2.C menyediakan kawalan peringkat rendah dan ciri-ciri canggih, sesuai untuk aplikasi berprestasi tinggi, tetapi mempunyai ambang pembelajaran yang tinggi dan memerlukan memori manual dan pengurusan keselamatan jenis.

Python dan Masa: Memanfaatkan masa belajar anda Python dan Masa: Memanfaatkan masa belajar anda Apr 14, 2025 am 12:02 AM

Untuk memaksimumkan kecekapan pembelajaran Python dalam masa yang terhad, anda boleh menggunakan modul, masa, dan modul Python. 1. Modul DateTime digunakan untuk merakam dan merancang masa pembelajaran. 2. Modul Masa membantu menetapkan kajian dan masa rehat. 3. Modul Jadual secara automatik mengatur tugas pembelajaran mingguan.

Python vs C: Meneroka Prestasi dan Kecekapan Python vs C: Meneroka Prestasi dan Kecekapan Apr 18, 2025 am 12:20 AM

Python lebih baik daripada C dalam kecekapan pembangunan, tetapi C lebih tinggi dalam prestasi pelaksanaan. 1. Sintaks ringkas Python dan perpustakaan yang kaya meningkatkan kecekapan pembangunan. 2. Ciri-ciri jenis kompilasi dan kawalan perkakasan meningkatkan prestasi pelaksanaan. Apabila membuat pilihan, anda perlu menimbang kelajuan pembangunan dan kecekapan pelaksanaan berdasarkan keperluan projek.

Python: Automasi, skrip, dan pengurusan tugas Python: Automasi, skrip, dan pengurusan tugas Apr 16, 2025 am 12:14 AM

Python cemerlang dalam automasi, skrip, dan pengurusan tugas. 1) Automasi: Sandaran fail direalisasikan melalui perpustakaan standard seperti OS dan Shutil. 2) Penulisan Skrip: Gunakan Perpustakaan Psutil untuk memantau sumber sistem. 3) Pengurusan Tugas: Gunakan perpustakaan jadual untuk menjadualkan tugas. Kemudahan penggunaan Python dan sokongan perpustakaan yang kaya menjadikannya alat pilihan di kawasan ini.

Yang merupakan sebahagian daripada Perpustakaan Standard Python: Senarai atau Array? Yang merupakan sebahagian daripada Perpustakaan Standard Python: Senarai atau Array? Apr 27, 2025 am 12:03 AM

Pythonlistsarepartofthestandardlibrary, sementara

Pembelajaran Python: Adakah 2 jam kajian harian mencukupi? Pembelajaran Python: Adakah 2 jam kajian harian mencukupi? Apr 18, 2025 am 12:22 AM

Adakah cukup untuk belajar Python selama dua jam sehari? Ia bergantung pada matlamat dan kaedah pembelajaran anda. 1) Membangunkan pelan pembelajaran yang jelas, 2) Pilih sumber dan kaedah pembelajaran yang sesuai, 3) mengamalkan dan mengkaji semula dan menyatukan amalan tangan dan mengkaji semula dan menyatukan, dan anda secara beransur-ansur boleh menguasai pengetahuan asas dan fungsi lanjutan Python dalam tempoh ini.

See all articles