Apakah Kod Bersih?

Nov 13, 2024 am 02:26 AM

What is Clean Code?

Hai dev,
Apabila pembangun bercakap tentang "kod bersih," mereka biasanya merujuk kepada kod yang mudah dibaca, difahami dan diselenggara. Kod bersih bukan sahaja untuk menjadikan kod anda kelihatan menarik—ia juga mengenai menulis kod yang boleh diambil, difahami dan diubah suai oleh sesiapa sahaja dalam pasukan anda tanpa perlu mengharungi komen yang tidak berkesudahan atau logik yang mengelirukan. Menulis kod bersih adalah mengenai ketukangan dan mengamalkan pemikiran yang mementingkan kesederhanaan, kejelasan dan tujuan.

Dalam siaran ini, kami akan meneroka prinsip utama kod bersih, sebab ia penting dan memberikan contoh dalam Python untuk menunjukkan cara idea ini boleh digunakan dalam amalan.


Mengapa Kod Bersih Penting

  1. Kebolehbacaan: Kod lebih kerap dibaca daripada ditulis. Kod bersih memastikan ia boleh dibaca dan difahami dengan cepat oleh orang lain (dan oleh anda pada masa hadapan).
  2. Kebolehselenggaraan: Kod bersih lebih mudah untuk diubah suai, diperbaiki dan dilanjutkan tanpa memperkenalkan pepijat.
  3. Skalabiliti: Kod modular yang bersih lebih mudah untuk skala dan disesuaikan dengan keperluan baharu.
  4. Hutang Teknikal Mengurangkan: Kod yang tidak kemas boleh membawa kepada pepijat dan setiap pembaikan memperkenalkan lebih kerumitan. Kod bersih mengelakkan lingkaran ini dengan mengekalkan kesederhanaan.

Faedahnya jelas, tetapi mencapai kod bersih adalah satu disiplin. Mari lihat prinsip asas.


Prinsip Utama Kod Bersih

1. Nama Bermakna

Nama harus menyampaikan niat. Pembolehubah, fungsi dan nama kelas hendaklah menerangkan tujuannya dengan jelas.

Contoh:

# Bad
def cal(x, y):
    return x * y

# Good
def calculate_area(width, height):
    return width * height
Salin selepas log masuk
Salin selepas log masuk

Dalam contoh "buruk", tidak jelas apa yang diwakili oleh kal, x dan y. Dalam contoh "baik", hitung_luas, lebar dan tinggi menyampaikan tujuan dan jadikan kod itu sendiri.


2. Prinsip Tanggungjawab Tunggal (SRP)

Setiap fungsi atau kelas harus mempunyai satu tanggungjawab atau tujuan. Ini mengurangkan kerumitan dan menjadikan kod lebih mudah difahami dan diselenggara.

Contoh:

# Bad
class Order:
    def calculate_total(self, items):
        # Logic for calculating total
        pass

    def send_order_confirmation_email(self):
        # Logic for sending an email
        pass

# Good
class Order:
    def calculate_total(self, items):
        # Logic for calculating total
        pass

class OrderConfirmationEmail:
    def send(self):
        # Logic for sending an email
        pass
Salin selepas log masuk
Salin selepas log masuk

Dalam contoh "baik", Pesanan dan E-mel Pengesahan Pesanan bertanggungjawab untuk pelbagai aspek aplikasi, mengikut SRP.


3. Elakkan Nombor Ajaib dan Rentetan

Gunakan pemalar atau pembolehubah untuk sebarang nombor atau rentetan "ajaib" untuk menjadikan kod anda lebih jelas dan mudah diubah suai.

Contoh:

# Bad
if user_age > 18:
    # Perform some action for adults

# Good
MINIMUM_AGE = 18
if user_age > MINIMUM_AGE:
    # Perform some action for adults
Salin selepas log masuk
Salin selepas log masuk

4. Pastikan Fungsi Kecil dan Fokus

Fungsi harus melakukan satu perkara dan melakukannya dengan baik. Elakkan mempunyai fungsi yang panjang atau melakukan pelbagai tugas.

Contoh:

# Bad
def process_order(order):
    # Validate order
    # Calculate total
    # Send confirmation email
    pass

# Good
def validate_order(order):
    pass

def calculate_order_total(order):
    pass

def send_order_confirmation(order):
    pass
Salin selepas log masuk

Setiap fungsi dalam contoh "baik" melakukan satu tugas khusus, menjadikan kod lebih modular dan boleh digunakan semula.


5. Gunakan Komen dengan Bijak

Komen hendaklah menerangkan "mengapa", bukan "apa." Kod sepatutnya jelas sendiri; gunakan ulasan dengan berhati-hati dan untuk konteks hanya apabila perlu.

Contoh:

# Bad
def cal(x, y):
    return x * y

# Good
def calculate_area(width, height):
    return width * height
Salin selepas log masuk
Salin selepas log masuk

Dalam contoh "buruk", ulasan adalah berlebihan. Dalam contoh "baik", ulasan memberikan konteks tambahan, menerangkan sebab kami menggunakan diskaun.


6. Pemformatan Konsisten

Pemformatan yang konsisten, seperti lekukan dan pemisah baris, meningkatkan kebolehbacaan. Ikuti panduan gaya standard seperti PEP 8 untuk Python, atau tentukan konvensyen pengekodan pasukan anda.

Contoh:

# Bad
class Order:
    def calculate_total(self, items):
        # Logic for calculating total
        pass

    def send_order_confirmation_email(self):
        # Logic for sending an email
        pass

# Good
class Order:
    def calculate_total(self, items):
        # Logic for calculating total
        pass

class OrderConfirmationEmail:
    def send(self):
        # Logic for sending an email
        pass
Salin selepas log masuk
Salin selepas log masuk

7. Pengendalian Ralat

Kendalikan ralat dengan baik. Kod harus menjangka kemungkinan ralat, dengan mesej ralat yang jelas dan pilihan pemulihan.

Contoh:

# Bad
if user_age > 18:
    # Perform some action for adults

# Good
MINIMUM_AGE = 18
if user_age > MINIMUM_AGE:
    # Perform some action for adults
Salin selepas log masuk
Salin selepas log masuk

Contoh "baik" memastikan ralat dikendalikan dan sumber ditutup dengan betul.


Minda Disebalik Kod Bersih

Kod bersih memerlukan pemikiran yang mengutamakan kesederhanaan, kejelasan dan empati untuk pembangun lain yang akan membaca dan mengekalkan kod tersebut. Pemikiran ini menghargai amalan yang memastikan kod ringkas tetapi bermaklumat, mengurangkan kerumitan yang tidak perlu dan menjadikan pangkalan kod lebih dipercayai dan menyeronokkan untuk digunakan.


Membungkus

Menulis kod bersih ialah proses pembelajaran yang berterusan dan memerlukan usaha dan disiplin. Ingat:

  • Namakan perkara dengan jelas.
  • Pastikan fungsi kecil.
  • Patuhi Prinsip Tanggungjawab Tunggal.
  • Kendalikan ralat dengan baik.

Kod bersih mungkin kelihatan seperti usaha tambahan, tetapi hasil dalam kebolehselenggaraan, kerjasama dan kalis masa hadapan kerja anda adalah tidak ternilai. Hayati prinsip ini dan anda akan terus membina perisian yang bukan sahaja berfungsi tetapi menyeronokkan untuk digunakan.

Mari kita pastikan kod kita bersih dan projek kita boleh skala!

Atas ialah kandungan terperinci Apakah Kod Bersih?. 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!

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
1655
14
Tutorial PHP
1254
29
Tutorial C#
1228
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.

Berapa banyak python yang boleh anda pelajari dalam 2 jam? Berapa banyak python yang boleh anda pelajari dalam 2 jam? Apr 09, 2025 pm 04:33 PM

Anda boleh mempelajari asas -asas Python dalam masa dua jam. 1. Belajar pembolehubah dan jenis data, 2. Struktur kawalan induk seperti jika pernyataan dan gelung, 3 memahami definisi dan penggunaan fungsi. Ini akan membantu anda mula menulis program python mudah.

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.

Rancangan Python 2 jam: Pendekatan yang realistik Rancangan Python 2 jam: Pendekatan yang realistik Apr 11, 2025 am 12:04 AM

Anda boleh mempelajari konsep pengaturcaraan asas dan kemahiran Python dalam masa 2 jam. 1. Belajar Pembolehubah dan Jenis Data, 2.

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: meneroka aplikasi utamanya Python: meneroka aplikasi utamanya Apr 10, 2025 am 09:41 AM

Python digunakan secara meluas dalam bidang pembangunan web, sains data, pembelajaran mesin, automasi dan skrip. 1) Dalam pembangunan web, kerangka Django dan Flask memudahkan proses pembangunan. 2) Dalam bidang sains data dan pembelajaran mesin, numpy, panda, scikit-learn dan perpustakaan tensorflow memberikan sokongan yang kuat. 3) Dari segi automasi dan skrip, Python sesuai untuk tugas -tugas seperti ujian automatik dan pengurusan sistem.

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.

See all articles