你有沒有想過,在未來的某一天,程序員不再需要寫代碼,只需要提供函數簽名和註釋,代碼就能自己在屏幕上生成。
越來越多的項目在使用代碼自動生成技術。Dart 用 bult_value 自動生成 JSON 數據解析代碼, Angular 爲了簡化自身概念的複雜提供了大量生成組建或模塊的方法, 很多 Java 工程也在使用逆向工程技術直接生成一個模塊再進行修改。有開發者表示:
- Kotlin Kapt 生成過類似 Record 的那種數據庫操作的。
- Vert.x 項目的 CodeGen,Vert.x 的多語言都是使用 CodeGen 生成的 API 。
…
代碼自動生成工具對程序員來說是一個提高效率利器,不用再反覆地寫着「增刪改查」,留出時間做更有意義的事情。
也有開發者發出了反對的聲音,機器寫代碼肯定存在有些需求無法理解的現象,而且如果生成的代碼與自己的編碼習慣不符,自己還是需要去修改細節,反倒浪費了時間。
你是如何看待代碼自動生成技術的?
作爲一名程序員,你如何看待代碼自動生成技術?你用過哪些 code generation 工具?你覺得哪個值得大家去嘗試呢?歡迎在下方留言區分享你的經驗。