你在工作中使用过哪些代码自动生成技术? | 话题

发起人:李俊辰
2 人讨论
1208 人围观

你有没有想过,在未来的某一天,程序员不再需要写代码,只需要提供函数签名和注释,代码就能自己在屏幕上生成。


越来越多的项目在使用代码自动生成技术。Dart 用 bult_value 自动生成 JSON 数据解析代码, Angular 为了简化自身概念的复杂提供了大量生成组建或模块的方法, 很多 Java 工程也在使用逆向工程技术直接生成一个模块再进行修改。有开发者表示:


  • Kotlin Kapt 生成过类似 Record 的那种数据库操作的。

  • Vert.x 项目的 CodeGen,Vert.x 的多语言都是使用 CodeGen 生成的 API 。


代码自动生成工具对程序员来说是一个提高效率利器,不用再反复地写着「增删改查」,留出时间做更有意义的事情。


也有开发者发出了反对的声音,机器写代码肯定存在有些需求无法理解的现象,而且如果生成的代码与自己的编码习惯不符,自己还是需要去修改细节,反倒浪费了时间。


你是如何看待代码自动生成技术的? (PK)
46 人已加入 已截止
39 (84.8%)
7 (15.2%)
期待!
不看好。
投票已结束


作为一名程序员,你如何看待代码自动生成技术?你用过哪些 code generation 工具?你觉得哪个值得大家去尝试呢?欢迎在下方留言区分享你的经验。


讨论 (4 条讨论)

发布
用户头像
宏,尤其是lisp真正的macro
2020 年 10 月 29 日 13:23
回复
用户头像
模板
2020 年 10 月 29 日 13:22
回复
用户头像
如果你的业务主要就是CRUD,那么它还是有意义的;复杂场景,负面效应远大于正面效应,得不偿失
2020 年 10 月 27 日 22:38
回复
用户头像
code generation,像MyBatis generator,swagger, blueprint等,都只能做到首次创建,无法陪伴后期的修改,它的作用有限。此外,它们还增加了额外的implicit constraints,像MyBatis generator 对double/decimal的处理,额外增加了不坑
2020 年 10 月 27 日 22:35
回复
没有更多评论了