Kajian Seni Kod: Bagaimana Saya Belajar Melampaui Ego Saya

Linda Hamilton
Lepaskan: 2024-10-12 06:33:02
asal
181 orang telah melayarinya

The Art of Code Reviews: How I Learned to Grow Beyond My Ego

Ulasan kod boleh menjadi pengalaman yang paling merendahkan dan transformatif dalam kehidupan pembangun. Apabila saya mula-mula menyertai pasukan sebagai pembangun junior, saya hanya mempunyai pemahaman tahap permukaan tentang konsep itu. Bagi saya, ia seolah-olah satu peluang untuk menunjukkan penguasaan saya terhadap kod elegan atau, sebaliknya, jemputan untuk melindungi diri saya daripada sebarang kritikan yang berpotensi. Saya kurang faham bahawa semakan kod bukan hanya tentang menunjukkan ketidakcekapan—ia juga mengenai memupuk kerjasama dan mendorong semua orang, termasuk saya sendiri, ke arah pertumbuhan.

Pada zaman awal saya, ulasan kod terasa keras. Saya akan menyerahkan kerja saya, dan kemudian dengan cemas memuat semula peti masuk saya untuk melihat ulasan daripada rakan sebaya saya. Pada mulanya, ia menyakitkan untuk melihat kod saya terkoyak, dan saya mengambil maklum balas secara peribadi. Saya masih ingat satu contoh apabila bos saya meninggalkan komen panjang tentang permintaan tarik saya, menerangkan cara pelaksanaan saya telah menghasilkan kesan sampingan yang tidak diingini merentas bahagian berlainan sistem kami. Kata-katanya sopan tetapi tegas—dia betul, dan kesilapan yang saya lakukan adalah kesilapan asas.

# My initial implementation

def process_data(data):
    result = []
    for item in data:
        if validate(item):
            process_item(item)  # This function had unintended side effects
            result.append(item)
    return result

# Feedback: The process_item function was modifying shared state, which caused issues in other parts of the system.
Salin selepas log masuk

Komen khusus itu membuatkan saya berasa seperti saya telah gagal bukan sahaja diri saya tetapi pasukan saya. Saya menarik diri dalam beberapa hari akan datang, mengelak daripada bertentang mata dengan bos saya dan memberikan jawapan terpotong kepada rakan sekerja saya. Saya fikir mereka melihat saya sebagai liabiliti. Sesi semakan kod seterusnya menghampiri, dan saya dipenuhi dengan ketakutan.

Pada suatu hari, rakan sekerja saya Sam perasan kelakuan saya dan menarik saya ke tepi. Dia menjelaskan bagaimana dia telah membuat kesilapan yang sama sejak awal-selalunya lebih teruk, dia mengakui sambil tersenyum. "Maksudnya," katanya, "adalah semakan kod itu bukan tentang membuktikan anda adalah orang yang paling bijak dalam bilik itu. Ia mengenai memastikan kita semua berjaya bersama-sama." Dia menggalakkan saya untuk melihat setiap komen sebagai peluang, bukannya penilaian kemahiran saya. Kata-kata Sam benar-benar mengubah minda saya.

Perspektif saya tentang ulasan kod berkembang dan saya memutuskan untuk menerima kerentanan. Kali seterusnya saya menerima maklum balas, saya tidak lari daripada kesilapan saya. Saya mula membalas komen, bertanya soalan penjelasan dan secara aktif menyumbang kepada permintaan tarik orang lain. Keterbukaan ini menghasilkan keajaiban. Bukan sahaja saya merasakan diri saya menjadi pembangun yang lebih baik, tetapi hubungan saya dalam pasukan mula berkembang. Daripada takut ulasan kod, saya mula melihatnya sebagai peluang untuk mengadakan perbualan yang bernas dengan bos saya dan rakan sekerja saya.

Saya mengalami detik yang sangat manis semasa projek besar. Saya telah mencadangkan seni bina baharu untuk menyelesaikan masalah yang telah melanda sistem kami selama berminggu-minggu. Ia berbeza, tidak terbukti dan berisiko. Komen ulasan penuh dengan soalan dan keraguan, tetapi daripada menjadi defensif, saya menggunakan maklum balas untuk mengulangi penyelesaian. Apabila ia akhirnya diluluskan, bos saya menghantar mesej ringkas kepada saya: "Kerja bagus. Ini akan membuat perubahan yang nyata."

# Improved implementation after feedback

def process_data(data):
    result = []
    for item in data:
        if validate(item):
            item = process_item_safely(item)  # Updated to avoid side effects
            result.append(item)
    return result

def process_item_safely(item):
    # A safer version of process_item that doesn't modify shared state
    new_item = item.copy()
    # Processing logic here
    return new_item
Salin selepas log masuk

Mesej itu bermakna dunia bagi saya, kerana ia bukan hanya mengenai cadangan teknikal—ia adalah pengiktirafan tentang sejauh mana saya telah berkembang dari segi kerjasama dan kematangan. Ulasan kod mengajar saya untuk melepaskan ego saya daripada kerja saya dan menerima perspektif orang lain. Mereka menjadikan saya pengaturcara yang lebih baik, komunikator yang lebih baik dan yang paling penting, rakan sepasukan yang lebih baik.

Nasihat saya? Jangan takut maklum balas. Jangan biarkan ego anda membayangi potensi anda untuk berkembang. Terima pemeriksaan, walaupun ia tidak selesa. Anda akan terkejut melihat sejauh mana anda belajar—dan cara pengalaman itu memperdalam hubungan profesional anda, mewujudkan ikatan yang dibina atas pertumbuhan dan pembelajaran yang dikongsi.

Atas ialah kandungan terperinci Kajian Seni Kod: Bagaimana Saya Belajar Melampaui Ego Saya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!