发表于 2024年7月14日1年前 原来也用过 IDE 内置的 AI 补充, 小功能不用查 API 或者文档, 很快就能实现了, 我以为 AI 对程序员的影响仅此而已. 但是最近两天, 用了 AI 的一些功能, 让我感觉可能影响更大. 我们接手了一个二开的项目, 数据库中有 60 多张表, 并且原系统是拆分了 n 多个微服务的 spring. 因为我们团队更习惯用 laravel, 所以一些新增接口和功能, 不打算在原来的 spring 中添加接口, 直接用 laravel 来实现. 这就面临一个问题, 需要把数据库中 60 多个表, 都在 laravel 中创建对饮的 model 文件, 不仅有表名, 还有字段名之类的. 本来安排一个同事来手工处理, 我估计可能需要 1 周左右. 今天突然突发奇想, 能不能用 ai, 实现一个 laravel command, 自动读取数据库表名和字段名, 自动创建所有的 model 文件? 结果让我大开眼界, 这种功能在 ai 的一问一答下, 不到 10 分钟就实现了功能, 全部把 60 多个表转换成 model 文件, 并且字段名没有一个错的(人工创建很难免有字段漏了或者错了). 平心而论, 如果我让某个同事来写这个命令工具, 基本上按照我司人员的水平, 估计也要写 1 天才能完成, ai 只需要不到 10 分钟, 并且代码很严谨, 备注和思路远比普通水平的程序员更好. 然后就把更复杂的任务交给 ai, 比如原来的 spring 会对很多 status 通过 java 注解 自动获取和数据库字典.在 laravel 中没有类似的注解, 只能手工获取字典数值, 很麻烦, 开始一直没有思路. 然后把问题抛给 ai, ai 竟然能给出建议, 在模型的 boot 中: protected static function boot() { static::retrieved(function ($model) { foreach ($model->dictionaryAttributes as $key => $dict_code) { // 自动获取注解字典 ... } }); } 卧槽, 这种用法, 我也是没有想到, 这种解题能力, 基本上我司的所有程序员都没有这种能力(毕竟大部分人都是 crud boy) 我真的被震撼了, 如果按照 ai 大模型的发展进度, 基础的 curd 可以直接创建, 复杂的业务流程也能给出高效的建议, 我司的程序员真的可以减少很多了.
原来也用过 IDE 内置的 AI 补充, 小功能不用查 API 或者文档, 很快就能实现了, 我以为 AI 对程序员的影响仅此而已.
但是最近两天, 用了 AI 的一些功能, 让我感觉可能影响更大.
我们接手了一个二开的项目, 数据库中有 60 多张表, 并且原系统是拆分了 n 多个微服务的 spring. 因为我们团队更习惯用 laravel, 所以一些新增接口和功能, 不打算在原来的 spring 中添加接口, 直接用 laravel 来实现.
这就面临一个问题, 需要把数据库中 60 多个表, 都在 laravel 中创建对饮的 model 文件, 不仅有表名, 还有字段名之类的. 本来安排一个同事来手工处理, 我估计可能需要 1 周左右.
今天突然突发奇想, 能不能用 ai, 实现一个 laravel command, 自动读取数据库表名和字段名, 自动创建所有的 model 文件?
结果让我大开眼界, 这种功能在 ai 的一问一答下, 不到 10 分钟就实现了功能, 全部把 60 多个表转换成 model 文件, 并且字段名没有一个错的(人工创建很难免有字段漏了或者错了).
平心而论, 如果我让某个同事来写这个命令工具, 基本上按照我司人员的水平, 估计也要写 1 天才能完成, ai 只需要不到 10 分钟, 并且代码很严谨, 备注和思路远比普通水平的程序员更好.
然后就把更复杂的任务交给 ai, 比如原来的 spring 会对很多 status 通过 java 注解 自动获取和数据库字典.在 laravel 中没有类似的注解, 只能手工获取字典数值, 很麻烦, 开始一直没有思路.
然后把问题抛给 ai, ai 竟然能给出建议, 在模型的 boot 中:
protected static function boot() { static::retrieved(function ($model) { foreach ($model->dictionaryAttributes as $key => $dict_code) { // 自动获取注解字典 ... } }); }
卧槽, 这种用法, 我也是没有想到, 这种解题能力, 基本上我司的所有程序员都没有这种能力(毕竟大部分人都是 crud boy)
我真的被震撼了, 如果按照 ai 大模型的发展进度, 基础的 curd 可以直接创建, 复杂的业务流程也能给出高效的建议, 我司的程序员真的可以减少很多了.