《零基础也能用AI 编程》-(1)编程从人到AI,一个时代的转折

AI 编程时代的到来–1.1从“人写代码”到“AI 写代码”:一个时代的转折

在过去的几十年里,软件开发一直是一项高度专业化的工作。编程像是专属于程序员的“魔法”,像与一个严谨的机器对话,不能出任何差错。要成为一名程序员,更需要花费大量精力与金钱学习编程语言、框架、数据库以及各种开发工具。过去的时代,有大量的计算及专业或非计算机专业的人投身到软件开发这个领域。

但在 2022 年,软件开发领域发生了重大的转折。随着两股强劲的技术力量出现,共同重塑了软件开发的格局:

 AI 问答(如 ChatGPT)降低了学习的门槛

它像一个无所不知的导师,让“如何搭建一个 Spring Boot 项目”或“什么是闭包”这类问题,从需要数小时查阅资料变为秒级获取答案。开发者从此可以从记忆语法和搜索报错信息的繁重劳动中解放出来,将精力聚焦于更核心的逻辑设计和业务创新。通过 Ai 问答,我们可以很快速的学习新的知识,知道是什么,知道为什么。

当你面对一个抽象概念感到困惑时,可以直接要求 AI 为你“生成一个具体的代码示例”。AI 能瞬间将晦涩的定义转化为一行行直观、可运行的代码,这是一种通过实践来理解理论的高效方式

列如你的困惑: 你正在学习编程中的“递归”概念。书本上的定义是“函数自己调用自己”,但你依然觉得超级抽象,不清楚它到底是如何工作的。向 AI 提问:“我不理解编程中的‘递归’概念,请用 Python 写一个简单的递归函数例子,并附上详细的执行步骤解释。”

AI 生成的示例与解释:

示例代码:python

# 计算数字 n 的阶乘 (n!)def factorial(n):

# 基线条件:0 的阶乘是 1

if n == 0:

return 1

# 递归条件:n! = n * (n-1)!

else:

return n * factorial(n – 1)

# 调用函数,计算 5 的阶乘

result = factorial(5)print(f”5 的阶乘是: {result}”) # 输出: 5 的阶乘是: 120

执行步骤解释

当你调用 factorial(5) 时,函数发现 5 != 0,于是执行 return 5 * factorial(4)。为了计算这个结果,程序必须第一调用 factorial(4)。同样地,factorial(4) 会触发 return 4 * factorial(3),以此类推,直到…调用 factorial(0) 时,满足基线条件 n == 0,函数直接返回 1。此时,递归调用停止,开始逐层“返回”结果:factorial(1) 返回 1 * 1 = 1,factorial(2) 返回 2 * 1 = 2,直到 factorial(5) 最终计算出 5 * 24 = 120。

通过这个生动的例子,抽象的“递归”概念立刻变得清晰可见。你不仅看到了代码,还通过一步步的“拆解-返回”过程,真正理解了其内在的运行机制。这正是 AI 作为学习伙伴的强劲之处。

 AI 编程工具(如 GitHub Copilot)改变了创作的方式:

它更像一个不知疲倦的编程搭档,直接 将你的自然语言描述(例如:“帮我写一个Python 函数来读取 CSV 文件并计算平均工资”)转化为实际的代码。这意味着,编程的核心技能正从“熟练记忆和敲击语法”向“精准描述和定义问题”迁移。

要理解 AI 编程的革命性,我们第一要回顾传统的编程方式。过去的编程:与冷酷机器的精密对话在过去的几十年里,编程本质上是一场人类与编译器(机器)之间高度结构化、不容有错的单向指令传递。

想象这样一个场景: 你需要一个程序来读取一个包含员工信息的 CSV 文件,并计算平均工资。

你的工作流程是这样的:

1、准确记忆与搜索: 你第一必须准确知道,在 Python 中处理 CSV 文件需要用 csv 模块,或者 pandas 库。如果你不记得,就需要花费时间查阅文档或搜索引擎。

2、逐行翻译逻辑: 你需要将“读取 CSV”这个需求,在脑中翻译成一系列冰冷的、符合语法的指令:3、与报错信息搏斗: 任何一个微小的错误——一个拼写错误、一个遗漏的冒号、一个错误的数据类型转换——都会导致程序崩溃。编译器只会反馈一个晦涩的报错信息,而你则要像侦探一样,逐行排查,才能找到并修复这个“bug”。这个过程的本质是“翻译官”:你的核心精力,耗费在将人类逻辑精准地翻译成机器能理解的、苛刻的语法规则。创造力与逻辑思维,常常被繁重的记忆和调试工作所打断。

目前的 AI 编程:与智能伙伴的流畅协作。

目前,让我们在 AI 编程助手的陪伴下,重现同一个任务。你的工作流程发生了根本性的改变:

1、直接描述意图: 你不再需要回忆具体的模块和函数。你只需在 IDE 中,直接用自然语言向你的 AI 编程搭档(如 GitHub Copilot)描述你的需求。

你输入的注释(Prompt):

# 帮我写一个函数:读取名为 'employees.csv' 的文件,计算'salary'列的平均值并返回

2、AI 生成可执行代码: 几乎在你敲完回车的同时,AI 会直接生成与之前手动编写功能一样、甚至更健壮的代码(例如,它可能会自动处理文件不存在等异常情况)。

3、你扮演审核与优化者: 你的工作不再是逐行敲代码,而是审阅 AI 生成的代码。你检查逻辑是否正确,结果是否符合预期,并根据业务需求进行微调和优化。这个过程的本质是“架构师”或“产品经理”:你不再关心“如何用语法实现”,而是专注于“要解决什么问题”以及“这个解决方案是否最优”。

目前,即便你从未写过代码,也只需用平常的语言对 AI 说出你的需求。几秒钟内,AI 就能为你生成结构清晰、可运行的代码。它不仅能完成单一任务,更能帮你设计数据库、撰写技术文档、排查代码错误,甚至将陈旧代码自动升级为现代风格。

我们正从一个需要亲手敲击每行代码的“指令式编程”时代,迈入与 AI 协同创作的“对话式编程”新时代。

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
擦肩而过的印象a的头像 - 宋马
评论 共1条

请登录后发表评论