有了chatgpt4o,普通人还需要学代码吗?

或许AI到达“终极智能”时,普通人就不用学代码了。不过现阶段或很长的一段时间内这还是不可能的。目前AI编程还是以辅助编程为主,普通人可以借助AI实现一些简单的编程。

其实这个问题可以扩大到AI编程的出现对编程行业或程序员职业影响的问题。就这个问题我们先来看看几们大佬们的观点:

 

百度-李彦宏

2024《对话·开年说》系列中,百度公司创始人、董事长李彦宏在节目中表示“以后不会存在程序员这种职业了”

 

dc72f55af1e4e352564d71f4c5566eb5.jpeg

 

360-周鸿祎

在《对话》现场,360创始人兼董事长周鸿祎对李彦宏的观点提出反对意见“我不同意这个观点”。

 

43e83ea39b167ab9c71305b8a4085729.jpeg

英伟达-黄仁勋

黄仁勋认为,即便是在人工智能(AI)革命刚刚起步的今天,编程已不再是一项关键技能。

 

64b017b39efd0fa0cc33cee6b5ed2633.jpeg

可以看到大佬们对AI与编程的影响这个问题的回答,虽然有差异,但我们不难看出AI在影响着编程这个职业或者行业。或许随着技术的发展与成熟,最终AI可以完全的代替人类。当然这个时间可能是一万年或许会更长或者更短。

 

8c756eae2fe7fa21ae885ca25ee431de.jpeg

之前也有读过阮一峰大佬《未来世界的幸存者》, 2018年7月发表的“技术的边界”中有写到:

“人工智能领域有一个概念,叫做“终极智能”。意思是,当机器的智能达到这种程度时,就不需要人类再做发明创造了,因为机器自己就会发明创造。”

 

 

我们来看看现阶段AI能给我们编程带来些什么?

 

一、专业性AI编程插件的能力

 

自从GPT带动全球AI热潮,AI席卷着各行各业。而在编程界也发生了巨大的变化,最出名的莫过于OpenAI与GitHub联合开发的Github Copilot。Github Copilot带动了一大堆AI编程工具的出现。

当然除了Github Copilot之外还有很多优秀的AI编程插件,我们来具体看一看:

 

52939d6fb4d395c1d18e0dc1066f5497.png

p.s.以上的下载量与评分均只是plugins.jetbrains的marketplace数据,发布的时长也不相同,数据仅供参考。

基本AI编程工具的功能都差不多:

  • 代码补全:根据当前代码上下文自动补全代码。
  • 根据注释生成代码:根据注释描述生成相应的代码。
  • 方法和函数生成:根据方法名或函数名自动生成该方法或函数的代码。
  • 生成测试代码:生成测试代码。
  • ....

 

这里选择豆包MarsCode来展示AI编程插件的功能:

 

d620cbbb2dedb39ca707bc4fc7106bb7.png

MarsCode 是豆包旗下的智能编程助手,提供以智能代码补全为代表的核心能力,支持主流编程语言及 IDE,能在编码过程中提供单行或整个函数的建议,同时支持在用户编码过程中提供代码解释、单测生成、问题修复、技术问答等辅助功能,提升编码效率与质量。

 

安装方式

JetBrains与 Visual Studio Code都可以安装,比如下面就是Visual Studio Code中编程助手的安装,在市场搜索后进行安装。

 

dae7f89153d86a33010dae5602abf2cf.png

安装好后就可以看到AI功能界面

 

1ea9552add0362e9cf26a42d20048368.png

 

主要功能

  • 行级/函数级实时补全、注释生成代码

在编码过程中提供单行或多行的代码推荐,并支持通过注释生成代码片段,提升代码编写速度。

 

e9a45dae17f29069b6ace8a7d87c9cac.png

我只写了注释,回车后代码就自动会生成

  • 代码解释

精确解释项目代码,帮助开发人员快速熟悉项目。

 

d6469276efb9ba8bad391f5b8b3cadd9.png

生成代码注释

 

71fca4a2766de9bf90d4c6e192195dfe.png

  • 单元测试生成

为选中函数生成单测,提升单测覆盖率,提升代码质量。

 

c7d8d67bf72aa8524a146d3d11f75d65.png

 

  • 智能修复

一键修改代码bug,提升代码修复效率。

当运行程序出现bug后,“AI Fix”图标会自动出现,点击后会可以通过AI生成相应的解决方案,解决方案里也会有相应的按钮半自动化的处理,非常的方便。

 

c471dfa2421b4439c07c0908547dbc2b.png

  • AI 智能问答

针对研发领域定向优化问答质量,提供更精准的问答结果。

 

c880ce2ca1c5cc5e3dff8e16a1dc961c.png

 

1 通用性AI产品的编程能力

目前市面上能实现编程的AI产品非常多,基本上AI产品都会带编程的能力,比如chatgpt、文心一言、通义千问、豆包等

下面我们用chatgpt4o与kimi的对比,来了解通用性AI产品的编程能力

 

2 生成手机正则代码

  • KIMI

这里是KIMI生成的代码,

 

435139a689e963ecc3c48c7cfa26990e.png

把代码贴到IDE中是可以直接执行的

 

3526c998437a1da4ecfb7c4755291ba7.png

 

  • chatgpt4o

和KIMI类似生成相应的正则代码,不过chatgpt默认会生成不同国家的手机号格式的正则

 

1e3320fd032c6ee62a72010f33cdaec3.png

当然这只是比较简单的正则表达式。不过这种情况下就不需要我们去学习复杂的正则表达试的语法了,直接拿过来用就可以了。

再如core表达式也是类似的,比如:每周一晚上10执行一次的core表达式

就需要我们专门去学习core表达式的语法了

 

eded632b633646267bf0ed18bba05d66.png

 

 

3 不同语言代码转换

我们现在让AI把上面的python代码转换成javascript代码

  • KIMI

 

c44a5b59696e3074ebd0536dcbea96ac.png

  • chatgpt

 

28dfd74bd479c7c5d008323b047ab53c.png

这次两者是完全相同的,在IDE里也是可以执行的

 

129f6e95285695ef65a1e631768eb96c.png

 

 

4 生成PDF电子签名

让AI生成PDF电子签名的代码

  • kimi

给chatgpt以下需求:请写出itextpdf5实现pdf电子签名的代码

生成的代码直接放到IDE里还是不能直接使用的

 

ecb043691d154b036fe72d448f1a16f6.png

可以看到是缺少import,kimi生成的代码中import并不完整,先把缺少的import先引入

 

8195c0b767c735044fcf46a637b288e7.png

引入后还是有多处错误

1)函数参数类型不正确

2)变量没定义

3)无对象枚举

 

  • chatgpt

给chatgpt相同的需求

 

1f5b02f60de91d72386ff6ff0c846716.png

把生成后的代码拷贝到IDE中,可以看到依赖已经下载好了,程序还是会报错

 

ae1de9e0ef3831e1f820746d9aeb4279.png

发现是import引用缺失,增加相应的import。

然后还是会发现PdfSignatureAppearance是没有WINCER_SIGNED枚举。一般来说就是引用的版本不对,说明itext生成的代码依赖与代码是不对称的。

 

022818014123b30a90f4718f5dea3872.png

虽然chatgpt4o生成的效果好一点,但还是不能直接使用。但大体上还是能知道实现PDF电子签名的技术实现,微调后还是可以使用。还是得完全懂代码的人才能正直使用起来。

 

 

总结

AI辅助编程给我们带来了一次变革,但目前或者很长一段时间内它的作用还是辅助的。并没有达到能代替程序员的能力。

像生成代码、代码注释、单元测试、bug自动修复等功能对编程的助力是非常大的。

 

我是栈江湖,如果你喜欢此文章,不要忘记点赞+关注

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/890518.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CE8.【C++ Cont】练习题组6

目录 1.矩阵转置 题目描述 输入格式 输出格式 输入输出样例 错误代码 提交结果 正确代码 提交结果 2.图像相似度 题目描述 输入格式 输出格式 输入输出样例 代码 提交结果 3. 计算矩阵边缘元素之和 题目描述 输入格式 输出格式 输入输出样例 说明/提示 …

哪个网页版思维导图好用?这5款高效软件不容错过!

眼下虽然每个人的电脑硬盘越来越大,但很多人还是保留着“能不装软件就不装”的理念,在选择办公软件时,会更倾向于选用推出了网页版的软件,这对思维导图来说也不例外。 那具体到思维导图网页版,有哪些软件值得推荐&…

【双指针算法】--复写零

文章目录 1. 题目2. 题目解析3. 代码 1. 题目 在线oj 给你一个长度固定的整数数组 arr ,请你将该数组中出现的每个零都复写一遍,并将其余的元素向右平移。 注意:请不要在超过该数组长度的位置写入元素。请对输入的数组 就地 进行上述修改&a…

石岩基督教福音堂

周末娃,娃的阿婆和我一起去石岩基督教福音堂做礼拜。 这是我第一次进入石岩的教堂。教堂很高。应该有3,4层楼高。 这周末做礼拜的人很多一楼人满了,阿婆去二楼做礼拜,娃和我去三楼的儿童室。很多家长楼下做礼拜,小朋友被安排三楼…

Flutter 异步编程简述

1、isolate 机制 1.1 基本使用 Dart 是基于单线程模型的语言。但是在开发当中我们经常会进行耗时操作比如网络请求,这种耗时操作会堵塞我们的代码。因此 Dart 也有并发机制 —— isolate。APP 的启动入口main函数就是一个类似 Android 主线程的一个主 isolate。与…

IDEA用jformdesigner插件做管理系统MVC架构

在 IntelliJ IDEA 中结合 JFormDesigner 插件,通过 Swing 框架实现一个管理系统的 MVC 架构是一种经典的开发方式。以下是具体的步骤和实现思路,包含从项目创建到 MVC 架构的核心代码实现。 1. 项目结构设计 为了清晰的 MVC 分层架构,建议按…

Linux内核调度优先级详解:如何优化你的系统性能

个人主页:chian-ocean 文章专栏-Linux 前言: 进程优先级调度是操作系统中的一种调度机制,其核心是为每个进程分配一个 优先级(Priority),然后根据优先级的高低决定进程执行的顺序和时间。这种机制确保了关…

Axure RP9 的详细安装及Axure入门应用

文章目录 一、Axure 是什么?二、Axure 的应用场景三、Axure 安装1. 下载安装2. 汉化授权 附:下载链接 一、Axure 是什么? 1、Axure 是一种强大的原型设计工具,它可以帮助设计师和产品经理快速创建交互式的、高保真度的原型,并进行用户体验…

pro文件转换为CMakeLists.txt文件,QT官方工具使用教程

某些情况需要使用cmake,如果手动将QT的pro文件转换成CMakeLists.txt,简短一点的pro还好,如果是比较复杂的pro,手动转换的时候需要长时间的debug,本人深有感受。 工具介绍: qmake2cmake工具创建一个CMakeL…

CDN信息收集(小迪网络安全笔记~

免责声明:本文章仅用于交流学习,因文章内容而产生的任何违法&未授权行为,与文章作者无关!!! 附:完整笔记目录~ ps:本人小白,笔记均在个人理解基础上整理,…

深度学习实战车辆目标跟踪【bytetrack/deepsort】

本文采用YOLOv8作为核心算法框架,结合PyQt5构建用户界面,使用Python3进行开发。YOLOv8以其高效的实时检测能力,在多个目标检测任务中展现出卓越性能。本研究针对车辆目标数据集进行训练和优化,该数据集包含丰富的车辆目标图像样本…

windows使用zip包安装MySQL

windows通过zip包安装MySQL windows通过zip包安装MySQL下载MySQL的zip安装包创建安装目录和数据目录解压zip安装包创建配置目录 etc 和 配置文件 my.ini安装MySQL进入解压后的bin目录执行命令初始化执行命令安装 验证安装查看服务已安装 启动MySQL查看服务运行情况修改密码创建…

Dots 常用操作

游戏中有多个蚂蚁群落,每个蚂蚁属于一个群落,如何设计数据结构? 方法1:为蚂蚁组件添加一个属性 ID,会造成逻辑中大量分支语句,如果分支语句逻辑不平衡可能带来 Job 调度问题,每个蚂蚁会有一份蚂…

Django 后端数据传给前端

Step 1 创建一个数据库 Step 2 在Django中点击数据库连接 Step 3 连接成功 Step 4 settings中找DATABASES Step 5 将数据库挂上面 将数据库引擎和数据库名改成自己的 Step 6 在_init_.py中加上数据库的支持语句 import pymysql pymysql.install_as_MySQLdb()Step7 简单创建两列…

BaseCTF_web_week3

复读机 输入的东西会在下方显示出来,wp说是简单的SSTI,这里来学习一下SSTI SSTI模板注入 根据My4n师傅的《超详细SSTI模板注入漏洞原理讲解_ssti注入-CSDN博客》写的 用户的输入返回时会经过一个模板渲染,SSTI漏洞就是用户插入了可以破坏模板…

SQL server学习09-数据库编程(上)

目录 一,了解T-SQL语言 1,常量(标量值) 2,变量 1)局部变量 2)全局变量 二,内置函数 1,字符串函数 2,数学函数 3,日期时间函数 4&#x…

CentOS7系统下部署tomcat,浏览器访问localhost:8080/

我这里以本地的VMware虚拟机创建的CentOS为例,来讲解部署tomcat的步骤,阿里云的服务器ECS部署只需设置下安全组规则即可,Centos内一样。 首先启动VM,输入密码进入centos,用xshell连接 2. 在家目录输入 cd /usr/local 进入local目录, 输入 mkdir java ,创建java目录…

解析 Ingress-Nginx 故障:排查思路与方法

文章目录 一、什么是Ingress-Nginx二、故障排除1.1Ingress-Controller日志和事件检查 Ingress 资源事件检查 Nginx 配置检查使用的服务是否存在调试日志 1.2对 Kubernetes API 服务器的认证服务认证服务账户Kube-Config 1.3使用GDB和Nginx1.4在 Nginx 4.2.5 或其他版本&#xf…

蓝桥杯物联网开发板硬件组成

第一节 开发板简介 物联网设计与开发竞赛实训平台由蓝桥杯大赛技术支持单位北京四梯科技有限公司设计和生产,该产品可用于参加蓝桥杯物联网设计与开发赛道的竞赛实训或院校相关课程的 实践教学环节。 开发板基于STM32WLE5无线微控制器设计,芯片提供了25…

【实操之 图像处理与百度api-python版本】

1 cgg带你建个工程 如图 不然你的pip baidu-aip 用不了 先对图片进行一点处理 $ 灰度处理 $ 滤波处理 参考 import cv2 import os def preprocess_images(input_folder, output_folder):# 确保输出文件夹存在if not os.path.exists(output_folder):os.makedirs(output_fol…