全程不用写代码,我用AI程序员写了一个飞机大战
前言
还在为写代码薅头发吗?还在为给出的需求无处下手而发愁吗?今天宏哥分享一款开发工具的插件,让你以后的编程变得简单起来。 作为一个游戏编程小白,能完成自己工作就不错了,还能玩别的,这在以前想都不敢想,现在就可以轻松实现了。来跟随宏观的脚步,通过简单几步成功开发出了一款飞机大战小游戏! 是的,你没听错,就是那种你可以控制一架小飞机,在屏幕上闪躲子弹,击败敌人的游戏。听起来是不是很酷呢!
1.环境准备
1.1操作系统
1.宏哥的环境是Windows 11版本 64位系统(32位的同学自己想办法哦,当然了现在32位的一般很少见),如下图所示:
1.2Python版本
Python版本:python:3.7.2,如下图所示:
1.3IDE开发工具
1.PyCharm 2021.3.3开发平台,如下图所示:
1.4 AI工具
1.通义灵码插件。
2.资源准备
链接:资源下载 提取码:n8ey ,就是游戏需要的一些图片和音频文件,如下图所示:
3.安装AI插件
1.首先是安装通义灵码,直接在pycharm的文件(File)下拉菜单中选择选项(Settings),如下图所示:
2.点击“选项(Settings)”后,在对话框中选择插件(plugin)在此界面上面的搜索框中,输入tongyi,就出来了,如下图所示:
3.已经安装上了,显示的是installed,没安装就是绿色的install,点击后,稍等一会,即可完成安装。如下图所示:
4.安装好以后,要想使用就得登录,点击“登录”,如下图所示:
5.一般注册过社区的,直接登录社区账号,然后通义灵码就会单点登录成功,很方便的,如下图所示:
6.通义灵码插件登录成功,如下图所示:
7.点击右下角图标,点击“高级设置”,可以根据自己癖好进行一些设置,如下图所示:
8.点击右侧的“通义灵码”,可以弹出AI对话框,点击“智能问答”和“AI程序员”进行切换,也可以点击最下边的下拉按钮切换大模型(qwen-2.5,deepseek-v3,deepseek-r1),如下图所示:
好了,到此一切准备工作就绪,下边就开始游戏编程之旅。
3.开启游戏编程之旅
3.1AI程序员交互过程
1.写出你的需求,发送给AI程序员,提示词如下:
生成飞机大战游戏完整代码,用pygame运行,记得不是简单的游戏框架代码哦,而是完整代码,利用飞机大战文件夹中的游戏素材: bullte.svg(子弹图), enemy.svg(敌机图),explosion.svg(爆炸素材图)、player.svg(我方机图)、sound.wav(子弹声音)、background_music.mp3(背景音乐),如下图所示:
2.好家伙一口气给我生成这么多,一气呵成啊,那我接下来点击“接受”,如下图所示:
3.点击“接受”后,自动创建python代码文件,如下图所示:
3.2AI程序员解决bug
1.运行代码出错,直接复制错误丢给AI程序员,帮你直接解决bug,如下图所示:
2.从上图我们可以看到,AI程序员直接定位到有问题代码的地方,同时给出了解决方案 :检查是否有未安装的模块,如何有,则通过命令进行安装,如果你觉得没有问题,点击“接受”就可以了,如下图所示:
3.再次运行修改后代码,控制台可以看到,在安装缺少的pygame模块,如下图所示:
4.稍等一会,安装完缺少的模块,代码运行成功,出现飞机大战的游戏界面(键盘方向键左右移动我放飞机,空格键发射子弹),如下图所示:
3.3AI程序员完善代码
1.实际运行中交互效果问题,直接向AI程序员提问,帮你完善。比如我遇到的问题:”子弹不跟着飞机移动”,给出的修复代码直接采用即可!如下图所示:
3.4AI程序员解决新需求
1.当然我们也可以通过AI程序员不断地完善我们游戏的需求如下:
(1)增加玩家命的概念,几条命就能继续玩几次,而不是直接退出。如下图所示:
(2)一条生命结束并重新开始时,要有5秒的无敌时间,如下图所示:
(3)增加紧张的背景音乐,如下图所示:
(4)增加积分功能,每打掉一个敌人增加一分,如下图所示:
2.按照以上需求,我们将这4条需求喂给AI程序员,它会自动将需求转换成代码,你可以傻瓜式的接受即可,完成以上需求后,运行代码后游戏界面,如下图所示:
3.5AI程序员代码优化
1.整体运行正常后,看着代码一大坨太难受,我们就让AI程序员这个老司机帮我们优化下,如下图所示:
3.6AI程序员编写单元测试
1.当然,你也可以让AI程序员编写单元测试,来验证代码的健壮性!解释代码,帮助你学习代码!生成注释,提高代码的可读性。如下图所示:
3.7AI打包成可执行文件
1.如何想打成exe软件直接运行,直接问AI程序员,他会详细告诉你每一步!提示词:“如何把程序打成.exe”,如下图所示:
4.个人愚见
4.1输出结果不稳定
1.由于时间关系,文章一天没有写完,第二天再次互动同样的提示词,结果却不一样,如下图所示:
2.运行代码,结果如下:
4.2提示词的准确理解
1.宏哥的那个提示词,没有说到背景图片,结果代码里有,然后运行代码提示我缺少背景图片,如下图所示:
4.3响应时间慢
1.在使用AI程序员的时候,添加提示词后,切换不同的模型,明显感觉deepseek的响应比qwen-2.5的速度慢,但总体感觉速度都不是很快(生成中,一直在转圈),如下图所示:
通过这次体验,大家是否感受到AI的强大和便捷。无论你是编程新手还是有经验的开发者,AI程序员都能为你提供极大的帮助,提升你的开发效率。希望这次分享能激发更多人尝试编程,感受创造的乐趣!赶快动手试试吧,说不定你也能轻松开发出属于自己的游戏哦!(为了增加趣味性,我就不附件代码了!自己体验吧)
5.使用感受
1.上边说了一些使用过程中的不足,下边再夸一下,最重要的是:免费,免费无敌,呵呵!
2.体验亮点:
- 代码智能生成:快速生成高质量代码,显著缩短开发周期。
- 跨语言编程:轻松实现代码跨语言转换,打破语言壁垒。
- 单元测试生成:自动生成测试用例,提升代码可靠性。
- 研发智能问答:即时解答技术难题,提高开发效率。
3.体验感受:
通义灵码2.0作为AI编程助手,功能强大且易用。在新功能开发、跨语言编程等场景下表现出色,显著提升了开发效率和代码质量。
建议:
- 进一步优化代码生成风格和安全性。
- 增加对更多编程语言的支持。
- 提高响应时间和对提示词理解
- 提示互动结果的稳定性
总结:
通义灵码2.0的AI程序员是一款值得推荐的智能编码搭子,为开发者带来高效、便捷的编程体验。期待未来更多创新功能。
全程不用写代码,我用AI程序员写了一个飞机大战的更多相关文章
- 因写太多 BUG!程序员遭公司颁奖羞辱,做的一个比一个绝
刚入职的程序员新人,办公桌上,基本上也就一电脑.一键盘.一鼠标,再配个被杯子.然而混迹职场多年的猿老们,办公桌上都有一些彰显身份地位的“好东西”. 这张图两点颇多,最显眼的,是办公桌上那个黄黄的东西, ...
- 程序员写 2000 行 if else?领导:这个锅我不背
前言 知乎上有小伙伴提了这么一个问题,如何看待陕西省普通话水平测试成绩查询系统?查询系统前端代码就直接给出了身份账号,姓名,证书编号,如果信息是真的,就泄露了这么多考生的信息,白给那种.为什么会发生这 ...
- 人才需求之Java程序员与AI程序员
据100offer报告显示:2018年Java人才市场「高开低走」的动荡局势.整体求职难度变大,且全年波动更剧烈,淡旺季区别明显.企业发出的Java面邀总数几个季度连续下跌,Q4 甚至比去年同期下降了 ...
- 出错的方法有可能是JDK,也可能是程序员写的程序,无论谁写的,抛出一定用throw
应对未检查异常就是养成良好的检查习惯. 已检查异常是不可避免的,对于已检查异常必须实现定义好应对的方法. 已检查异常肯定跨越出了虚拟机的范围.(比如“未找到文件”) 如何处理已检查异常(对于所有的已检 ...
- 好程序员分享居中一个float元素
好程序员分享居中一个float元素,我们布局的时候,用margin来设置float元素的外边距来达到效果.对于,在文档流中的元素,我们很容易让它水平居中,只要给元素设置一个固定的宽度,用margin: ...
- 使用 .NET WinForm 开发所见即所得的 IDE 开发环境,实现不写代码直接生成应用程序
直接切入正题,这是我09年到11年左右业余时间编写的项目,最初的想法很简单,做一个能拖拖拽拽就直接生成应用程序的工具,不用写代码,把能想到的业务操作全部封装起来,通过配置的方式把这些业务操作组织起来运 ...
- .net程序员写业务代码需要注意的地方
代码规范要求1.命名空间规范:dao层的impl实现和接口采用一样的命名空间,到对应文件夹层:IxxDaoContext与其实现类采用顶级命名空间. 2.TableEntity文件夹:所有的实体放到各 ...
- 为什么不用C++写游戏(聪明的程序员不用C++折磨自己)(这些工作,QT都替开发者解决了,C++没有根类导致太多的问题,也没有字符串类)
当今世界上绝大多数游戏都是C++写的,为什么要说不呢? 要做什么?写游戏. 写游戏首先要考虑些什么?做什么样的游戏,图形.音效.游戏逻辑如何实现. 用C++要先考虑什么?定义跨平台数据类型抽象,实现常 ...
- 我为什么鼓励程序员写blog
工程师该怎样才能突破自己的能力瓶颈?写 blog! 工程师该怎样精进自己在职涯上所需要的能力?写 blog! 工程师该怎样才能保持学习与成长的动能?写 blog! 工程师该怎样才能证明自己的潜力与特质 ...
- 不要以为Bug写的好就是好程序员,其实这只占不到15%!
最近和一位从事多年架构工作的技术哥们见面,聊到了近期面试程序员的一些经历,谈到了"如何判断程序员水平高低"这个话题,颇有些感触,觉得有价值,因此花了些时间整理.分享给大家. 正 ...
随机推荐
- Java性能最后一个领域:去除垃圾回收器
Java性能最后一个领域:去除垃圾回收器 不产生垃圾不等于不创建对象,如果对象创建满足以下几个条件,仍然可以在创建对象之后不需要垃圾回收器: 应用程序或者库在初始化的时候生成有限个数的对象,然后不断复 ...
- TS 原理详细解读(7)绑定1-符号
在上一节主要介绍了语法树的解析生成.就好比电脑已经听到了"你真聪明"这句话,现在要让电脑开始思考这句话的含义--是真聪明还是假聪明. 这是一个非常的复杂的过程,接下来将有连续几节内 ...
- Qt编写视频播放器(支持pbonon/qmediaplayer/ffmpeg/vlc/mpv等多种内核)
一.前言 花了一年多的时间,终于把这个超级播放器做成了自己想要的架构,用户的需求是一方面,自己架构方面的提升也是一方面,最主要是将界面和解码解耦了,这样才能动态的挂载不同的解码内核到不同的视频监控窗体 ...
- 综述😋Security and Privacy Challenges of ✌Large Language Models A Survey
- [AI] 基于大模型的AI搜索引擎
概述:基于大模型的AI搜索引擎 ∈ 大模型智能体应用 AI搜索引擎的架构与组成 用户层:用户输入问题/关键词 Agent层: 用户的输入(当前和历史) + 问题提问模板 => 标准的问题 ... ...
- Solution -「LOCAL」菜
\(\mathscr{Description}\) Private link. 给定 \(N,L,X,Y,K\),求选出 \(0\le a_1\le a_2\le\cdots a_{N-1}\ ...
- pdf文件内容分析工具简介(研究pdf标准好帮手)
前言:PDF文件标准诞生于20年前,从今天的视角来看,标准设计理念有些过时了:然而,pdf文件生态已经形成,尾大不掉吧.纵然有各种缺点,但是不可否认的事实:pdf是当今应用最广泛的版式文件. pdf文 ...
- CSP-2024 初赛游记
啊. \(\texttt{day}\) \(-4000\) 到重庆( \(\texttt{day}\) $ -3999$ ~ \(-7\) 文化课.文化课.OI.OI.自习.自习.模拟.模拟.挂分.挂 ...
- WPF 获取拖拽网页图片链接
在浏览器里拖拽一个元素,我只获取图片链接 private void Grid_PreviewDragOver(object sender, DragEventArgs e) { e.Effects = ...
- bat脚本判断windows服务,判断windows进程
bat脚本判断windows服务是否存在,方式一: sc query|findstr /i "ZhuDongFangYu" &&echo "存在" ...