现在越来越多人在使用 AI 进行编程,但我发现,虽然 AI 可以帮我们改代码、写 APP,如果自己没有一定的编程基础,要做一个生产级别的项目还是有难度的。目前我更多是用 AI 编程来做一些自己用的小工具。
这让我想到了以前的软件工程。软件工程这门学科的目的,就是让一个不太会写代码的人,变成能够写出标准化代码、能干活的程序员,可能是那种有一到三年经验的水平,他们的水平通过软件工程的训练能稳步提升。
所以我觉得,在 AI 编程的时代,可能更需要学习一些软件工程相关的知识。
不过,学习这些基础知识并不是要把所有内容都学一遍,而是要有选择地掌握那些对 AI 编程真正有用的基础知识,也许这才是真正的和AI协同工作,它做它能干的,我做自己能干的。
我觉得可以从几个方面来考虑,不一定对。
1、需要掌握常见的编程基础知识,比如什么是变量、常量、类等。
2、了解数据库的基本概念和用法,做一些简单的增删改查
3、学习架构设计,现在 AI 能生成很多代码,但你会发现,很多人开玩笑说的屎山代码,其实就是架构设计做得不够好,改了A模块,B模块也会出问题,耦合度很高。
所以可能要架构层面去学习,比如了解 SOLID 原则是什么等等,这块深入了解需要很多实战经验,我觉得只要有个框架性的了解就行了,当然,如果这些知识不太懂,也可以通过 AI 来辅助学习。
4、关注测试。AI 在编程时,现在也能自己生成测试用例了,但有时候它在后续测试过程中,如果发现测试过不去,可能会直接修改你的测试用例,而不是修复代码本身。最可怕的是,我们自己可能还没意识到,以为没有bug了,实际上它是用“邪修”的方式让测试通过了。所以要学会如何构建完整的测试流程,确保测试的有效性,特别是关注边界条件下的性能。
总之,在AI编程时代,我觉得还是应该更多地学习软件工程相关的知识,而不是完全依赖AI,它是驾驭好AI编程的核心工具。

