Kata Jujur Jurutera: AI Bantu Saya Tulis Kod, Tapi Saya Tetap Terjerumus dalam Beberapa Perangkap

Adakah alat AI untuk menulis kod benar-benar berguna? Sebagai seorang jurutera yang menggunakannya setiap hari, saya katakan: Sangat berguna, tetapi saya juga pernah merana akibat beberapa perangkap. Artikel ini membincangkan cara ia benar-benar membantu saya, serta saat-saat "nampak betul, tapi bila ‘run’ terus meletup".

Saya sudah menulis kod selama lebih sepuluh tahun. Semasa editor AI mula-mula diperkenalkan, saya agak skeptikal. Tetapi selepas menggunakannya selama setahun, saya kini tidak boleh hidup tanpanya—tetapi kerana terlalu mempercayainya, saya juga pernah berdepan dengan beberapa masalah yang membuatkan saya terpaksa bekerja lebih masa sehingga tengah malam. Artikel ini bukan untuk mendewakan mahupun memburuk-burukkan AI, sebaliknya ia adalah pengalaman sebenar seorang jurutera perisian.

Apa yang benar-benar berubah ialah "masa templat"

Mari kita mulakan dengan kelebihannya. Nilai terbesar AI buat saya bukanlah menulis algoritma yang canggih, tetapi memotong masa untuk melakukan kerja yang "membosankan tetapi perlu".

Menulis templat API, fail konfigurasi, pelbagai kod CRUD yang berulang, atau menukar data dari satu format ke format yang lain—semua ini boleh saya buat dengan mata tertutup, tetapi ia memakan masa dan merenyahkan. Kini, dengan editor AI seperti Cursor, saya hanya perlu menerangkannya dan ia akan menjana kod tersebut, kemudian saya buat semakan semula. Dulu, tugasan seperti ini memakan masa satu pertiga daripada hari saya, kini ia tinggal kurang daripada sepuluh peratus. Masa yang dijimatkan itu saya gunakan untuk memikirkan arkitektur sistem dan menyelesaikan pepijat (bug) yang benar-benar sukar.

Secara jujurnya: AI tidak menjadikan saya seorang jurutera yang lebih hebat, tetapi ia membebaskan saya daripada kerja-kerja remeh untuk melakukan perkara yang lebih bernilai.

Perangkap 1: Ia sangat pandai "kelihatan betul"

Kini, bahagian yang menyakitkan pula. Bahaya terbesar pada kod yang ditulis oleh AI ialah—ia kelihatan sangat lancar dan masuk akal, tetapi sebenarnya salah.

Pengalaman paling menyakitkan yang pernah saya hadapi ialah apabila ia memberi saya kod untuk memproses tarikh. Logiknya kelihatan cantik dan penamaan pembolehubahnya jelas, jadi saya terus menggabungkannya (merge) selepas melihat tiada masalah. Akibatnya, sistem mengalami masalah besar merentas zon masa (time zone) dan ranap semasa dalam talian (online), memaksa saya bangun tengah malam untuk membaikinya. Apabila disemak semula, pepijat itu tersembunyi pada satu keadaan pinggir (edge case) yang sangat terperinci yang tidak diambil kira oleh AI, manakala saya pula gagal menyemaknya dengan teliti kerana "ia kelihatan sangat profesional".

Pengajaran: Semakin sempurna kod yang ditulis oleh AI kelihatan, semakin teliti anda perlu membuat semakan (review). Ia bukannya tidak pernah melakukan kesilapan, tetapi ia "melakukan kesilapan dengan penuh yakin".

Perangkap 2: Ia tidak memahami konteks keseluruhan projek anda

Perangkap kedua ialah, AI sangat memahami "bahagian kod ini", tetapi selalunya gagal memahami "keseluruhan sistem anda".

Ia mungkin memberi anda kod yang betul dari segi teknikal, tetapi langsung tidak mengikut konvensyen projek anda; atau ia mungkin mencipta semula roda yang telahpun wujud kerana ia tidak tahu bahawa fungsi utiliti itu sudah pun ada. Kod "betul setempat, tetapi janggal secara keseluruhan" sebegini, jika dibiarkan terkumpul, akan menjadikan projek semakin hari semakin kacau.

Oleh itu, kini saya akan memberitahu AI dengan sangat jelas tentang konvensyen projek dan meminta ia menggunakan semula apa yang sedia ada, bukannya membiarkannya berfungsi sesuka hati.

Perangkap 3: Terlalu bergantung, otot pemikiran akan merosot

Perkara ini agak subjektif, tetapi saya benar-benar dapat merasakannya. Ada satu ketika, saya terlalu bergantung pada AI sehinggakan perkara asas pun saya malas hendak fikir sendiri dan terus bertanya kepada AI. Akibatnya, semasa sesi temuduga papan putih (whiteboard interview) di mana tiada AI tersedia, saya tersangkut—bukan kerana saya tidak tahu, tetapi kerana sudah terlalu lama saya tidak "berfikir sendiri dari kosong", menyebabkan saya menjadi kurang cekap.

Kini, saya sengaja memperuntukkan masa untuk "menulis sendiri", terutamanya untuk logik teras dan perkara yang ingin saya pelajari. AI digunakan untuk mempercepatkan kerja, bukan untuk menggantikan pemikiran saya. Kita sendiri yang perlu menetapkan batasannya.

Bagaimana saya menggunakannya sekarang

Selepas setahun, prinsip saya sangat mudah: Biarkan AI melakukan perkara yang saya tahu buat, tetapi tidak mahu bazirkan masa melakukannya; saya sendiri yang akan melakukan perkara yang memerlukan penilaian, pemahaman, dan bidang yang saya ingin kembangkan.

Templat, penukaran format, carian sintaks, penulisan ujian (testing)—serahkan kepada AI. Keputusan arkitektur, keselamatan, logik teras, dan penyelesaian pepijat yang sukar—buat sendiri, AI paling banyak hanya bertindak sebagai penasihat. Sentiasa semak setiap baris kod yang ditulisnya, terutamanya baris-baris yang kelihatan paling sempurna.

AI memang menjadikan proses pengaturcaraan lebih pantas, itu adalah hakikatnya. Tetapi ia juga menaikkan kos bagi sikap "salin dan tampal tanpa faham". Semakin berkuasa alat tersebut, semakin kita perlu berwaspada semasa menggunakannya. Untuk melihat lebih banyak alat pembangunan, anda boleh merujuk kepada Cadangan Alat Pembangunan Kod AI.

Senario Biasa: Kerja Berpasukan dan Editor AI

Dalam kerja berpasukan, editor AI boleh menjadi alat yang sangat berguna, terutamanya dalam projek berskala besar. Walau bagaimanapun, ahli pasukan perlu berkomunikasi dan menyelaras dengan jelas untuk memastikan kod yang dijana oleh editor AI mematuhi konvensyen dan standard pasukan. Di samping itu, ahli pasukan juga perlu berhati-hati terhadap ralat atau ketidakkonsistenan yang mungkin dihasilkan oleh editor AI, terutamanya dalam kerjasama merentas zon masa atau sistem yang berbeza.

Penggunaan Lanjutan: Menyesuaikan Editor AI

Dengan perkembangan editor AI, kini anda boleh menyesuaikan editor AI untuk memenuhi keperluan dan konvensyen tertentu. Jurutera boleh menetapkan parameter dan peraturan editor AI untuk menjana kod yang lebih selaras dengan keperluan mereka. Sebagai contoh, anda boleh menetapkan editor AI untuk menjana bahasa pengaturcaraan atau rangka kerja (framework) tertentu sahaja, atau menetapkan agar ia mematuhi konvensyen penamaan atau gaya pengekodan yang spesifik.

Ralat Biasa: Terlalu Bergantung pada Editor AI

Terlalu bergantung pada editor AI adalah kesilapan yang sering dilakukan oleh jurutera. Walaupun editor AI boleh menjimatkan masa dan meningkatkan kecekapan, ia tidak boleh menggantikan penilaian dan pemikiran jurutera. Jurutera perlu kekal berwaspada dan mempunyai pemikiran kritis, terutamanya apabila menyemak kod yang dijana oleh editor AI. Di samping itu, jurutera juga perlu prihatin sama ada kemahiran dan pengetahuan mereka merosot akibat terlalu bergantung pada editor AI.

Trend Masa Depan: Integrasi Editor AI dengan Kecerdasan Buatan

Pada masa depan, editor AI mungkin diintegrasikan dengan lebih mendalam bersama kecerdasan buatan, membolehkan jurutera menggunakan editor AI dengan lebih berkesan. Sebagai contoh, editor AI boleh mempelajari keutamaan dan konvensyen jurutera melalui algoritma pembelajaran mesin (machine learning) untuk menjana kod yang lebih menepati keperluan mereka. Selain itu, editor AI juga mungkin menyepadukan lebih banyak fungsi, seperti ujian automatik dan nyahpepijat (debugging), membolehkan jurutera membangunkan dan melancarkan perisian dengan lebih pantas.

Cadangan untuk Kumpulan Sasaran yang Berbeza

Cadangan untuk pembimbing pemula (beginners) adalah: Jangan takut menggunakan editor AI, tetapi kekal berwaspada dan miliki pemikiran kritis. Pemula boleh menggunakan editor AI untuk mempelajari asas dan kemahiran pengaturcaraan, tetapi pastikan tidak terlalu bergantung padanya. Cadangan untuk jurutera berpengalaman adalah: Kekalkan kemahiran dan pengetahuan anda sendiri, jangan biarkan editor AI mengambil alih penilaian dan pemikiran anda. Jurutera berpengalaman boleh menggunakan editor AI untuk meningkatkan kecekapan dan produktiviti, tetapi perlu berhati-hati agar tidak terlalu bergantung padanya. Cadangan untuk ketua pasukan adalah: Berkomunikasi dan selaraskan cara serta konvensyen penggunaan editor AI di kalangan ahli pasukan dengan jelas, bagi memastikan pasukan dapat menggunakannya dengan berkesan.

Jadual Perbandingan: Kelebihan dan Kekurangan Editor AI

Perkara Kelebihan Kekurangan
Produktiviti Meningkatkan produktiviti, menjimatkan masa Boleh menyebabkan terlalu bergantung
Ketepatan Boleh menjana kod yang betul Boleh menghasilkan ralat atau ketidakkonsistenan
Keluk Pembelajaran Membantu pembula mempelajari pengaturcaraan Boleh menyebabkan pembula ketandusan pengetahuan asas pengaturcaraan
Kerja Berpasukan Meningkatkan kecekapan kerja berpasukan Memerlukan komunikasi dan koordinasi yang jelas

Salah Faham Biasa: Editor AI Akan Menggantikan Jurutera

Ramai yang salah faham bahawa editor AI akan mengambil alih kerja jurutera. Walau bagaimanapun, matlamat editor AI adalah untuk membantu jurutera meningkatkan kecekapan dan produktiviti, bukannya menggantikan penilaian dan pemikiran jurutera. Jurutera perlu mengekalkan kemahiran dan pengetahuan mereka sendiri, serta berfikir secara kritis terhadap kod yang dijana oleh editor AI.

Langkah Praktikal: Cara Menggunakan Editor AI dengan Berkesan

Untuk menggunakan editor AI dengan berkesan, jurutera perlu mengikuti langkah-langkah berikut:

  1. Tetapkan parameter dan peraturan editor AI dengan jelas.
  2. Semak kod yang dijana oleh editor AI, terutamanya baris-baris yang kelihatan paling sempurna.
  3. Kekalkan kemahiran dan pengetahuan sendiri, jangan terlalu bergantung pada editor AI.
  4. Gunakan editor AI untuk meningkatkan kecekapan dan produktiviti, tetapi jangan biarkan ia menggantikan penilaian dan pemikiran anda sendiri.

Perkembangan Masa Depan: Integrasi Editor AI dan Ujian Automatik

Pada masa depan, editor AI mungkin diintegrasikan dengan lebih mendalam bersama ujian automatik (automated testing), membolehkan jurutera menggunakan editor AI dengan lebih berkesan. Sebagai contoh, editor AI boleh mempelajari keutamaan dan konvensyen jurutera melalui algoritma pembelajaran mesin untuk menjana kod yang lebih menepati keperluan mereka. Selain itu, editor AI juga mungkin menyepadukan lebih banyak fungsi, seperti ujian automatik dan nyahpepijat, membolehkan jurutera membangunkan dan melancarkan perisian dengan lebih pantas. Ini akan meningkatkan produktiviti dan kecekapan jurutera secara ketara, serta membantu mereka menyiapkan tugasan dengan lebih baik.

Soalan Lazim

Bolehkah kod yang ditulis oleh AI digunakan secara terus?

Tidak digalakkan untuk guna bulat-bulat. Ia selalunya "salah dengan penuh yakin", lagi nampak sempurna lagi teliti kita kena ‘review’, terutamanya syarat sempadan, keselamatan, dan konteks merentas sistem.

Adakah AI akan melemahkan jurutera?

Pergantungan yang keterlaluan akan menyebabkan kemahiran asas menjadi tumpul. Adalah disyorkan untuk biarkan AI melakukan kod asas (boilerplate) dan kerja renyah, manakala logik teras dan bahagian untuk berkembang ditulis sendiri, dengan mengekalkan latihan secara sengaja.

Apakah kegunaan terbaik untuk editor AI?

Paling sesuai untuk memotong masa menulis templat yang "bosan tapi wajib" (CRUD, tetapan, penukaran format, tulis ujian), membolehkan anda menumpukan masa pada seni bina dan cabaran sukar.

繁體中文版 →