AI Memenangi Perang TypeScript

Perdebatan telah berakhir. TypeScript tidak menang kerana hujah yang lebih baik. Ia menang kerana alatan AI menjadikan perdebatan tersebut tidak lagi relevan.

Penyelidik menemui satu corak utama. Kebanyakan kegagalan kompilasi dalam kod yang dijana AI adalah ketidakpadanan jenis (type mismatches). Ini bukan ralat logik. Ia adalah kesilapan mudah di mana bentuk fungsi atau argumen adalah salah.

AI menjana kod dengan pantas dengan mengikut corak. Ia tidak memegang model mental yang lengkap bagi keseluruhan codebase anda. Manusia mungkin mengesan ralat jenis melalui pengalaman. Pemeriksa jenis (type checker) mengesannya secara serta-merta tanpa sebarang konteks.

Pemadanan jenis statik (Static typing) bukan lagi sekadar pilihan gaya. Ia adalah alat keselamatan untuk kod yang ditulis oleh AI.

Lihat bagaimana perkara ini mempengaruhi kerja harian anda:

Codebase dinamik dengan AI:

  • AI menulis fungsi.
  • Jenis adalah tersirat (implicit).
  • Anda mesti mencari ralat secara manual.

Codebase statik dengan AI:

  • AI menulis fungsi.
  • Pemeriksa jenis (type checker) menandakan kesilapan dengan serta-merta.

Kadar kesilapan adalah sama. Kos untuk memperbaikinya adalah berbeza. Inilah sebabnya mengapa penggunaan TypeScript terus berkembang. Jenis (Types) bertindak sebagai insurans murah apabila bukan manusia yang menulis draf pertama anda.

Peraturan ini juga terpakai kepada bahasa lain. Rust adalah lebih berguna di sini. Borrow checker menghalang pepijat memori dan konkurensi yang sering diperkenalkan oleh AI. Pepijat ini kelihatan betul secara lokal tetapi gagal semasa runtime.

Bahasa-bahasa ini menang kerana ia menjadikan pembangunan berbantu AI lebih selamat untuk disemak.

Jika anda mengetuai sesebuah pasukan, ikuti langkah-langkah ini:

  • Tambah pemadanan jenis pada sempadan (boundaries) terlebih dahulu.
  • Fokus pada tandatangan fungsi (function signatures) dan kontrak API.
  • Lindungi kawasan di mana data bergerak antara modul.

Amaran: keselamatan jenis (type safety) bukanlah penyelesaian kepada semua masalah. Ia mengesan pepijat yang cenderung dilakukan oleh AI. Ia tidak mengesan logik yang buruk atau keperluan yang salah. Kod yang berjaya dikompil tidak semestinya betul. Pemeriksa jenis adalah tali pinggang keledar, bukannya pemandu.

Adakah pasukan anda menggunakan mod ketat (strict mode) secara lalai? Beritahu saya pendapat anda di bawah.

Sumber: https://dev.to/tuba_mughal_2fd16fd2c7978/typescript-didnt-win-the-language-war-ai-did-it-for-them-79l