我为女儿开发了一个游戏网站

大家好,我是星河。

自从协助妻子为女儿开发了算数射击游戏后,星河就一直有个想法:为女儿打造一个专属的学习游戏网站。之前的射击游戏虽然有趣,但缺乏难度分级,无法根据女儿的学习进度灵活调整。而且,仅仅是数学游戏未免有些单调,语文和英语的学习也应该同步进行,寓教于乐才能事半功倍。当然,更重要的是,我希望能挑战一下自己,看看在完全没有网站开发经验的情况下,能否借助Cursor,仅凭自然语言,完成一个定制化网站的开发。这不仅是为女儿打造学习工具,也是一次探索AI辅助编程边界的尝试。

经过三天假期的奋战,这个网站总算搭建并部署完成了,网址是:http://47.122.68.201:3000/ 。欢迎大家体验。

图片

网站的源码星河也已经上传到GitHub,感兴趣的朋友可以在文末获取。

网站主要分为数学、英语、语文三个学习模块,每个模块都根据女儿的学习特点进行了定制设计。

  • 数学模块:

    沿用了之前算数射击游戏的思路,通过解答数学题目来发射子弹,击退小怪兽的进攻。这次我增加了关卡设置,随着关卡推进,题目难度会逐渐提升,循序渐进地锻炼女儿的数学能力。为了增加趣味性,我还特别设计了一个BOSS关卡,让学习过程充满挑战和惊喜。

图片

  • 英语学习模块:

    旨在帮助女儿记忆英文字母,并认识一些简单的单词。我把它设计成了一个小浣熊和僵尸先生的赛跑游戏。屏幕上方会显示一个单词和对应的图片,女儿需要在下方众多字母中找出正确的字母并拼写出单词。每拼对一个单词,小浣熊就会向前跑一段距离。僵尸先生则会匀速前进,我们需要让小浣熊比僵尸先生更快到达终点,赢得比赛。同样,我也设置了多个关卡,僵尸先生会越跑越快,而小浣熊每次前进的距离会越来越短,增加了游戏的紧张感和挑战性。

图片

  • 语文学习模块:

    侧重于帮助女儿学习生字,并了解一些简单的儿歌和古诗。它分为学习和游戏两个部分。在学习部分,会展示一个生字,并配以一首相关的儿歌或古诗,方便朗诵学习,加深记忆。游戏部分则以认字为主,女儿需要从飘起的气球中找到正确的生字并点击,获得分数。随着关卡推进,气球飘起的速度会越来越快,气球的数量也会越来越多,考验女儿的反应速度和识字能力。

图片

为了能够根据女儿的学习进度灵活调整游戏难度,星河还专门开发了后台管理页面,可以配置数学题目的难度、英语单词的范围、生字的范围等等。这样既能保证女儿在学习过程中感受到挑战和进步,又不会因为题目太难而打击她的积极性,真正做到寓教于乐。

图片

图片

图片

整个开发过程其实没什么特别之处,依然是遵循软件开发的通用流程:先明确需求,设计原型,然后根据原型进行功能开发。在完成初版开发之后,进行调试测试,持续的将发现的问题、错误连同日志反馈给Cursor,让它一步一步的进行功能完善。最终根据Cursor指导,将网站上线。

图片

图片

最后星河想分享一下最近使用Cursor开发一系列软件的感受。星河利用Cursor,通过纯自然语言的方式,已经成功开发了一个浏览器插件、一个桌面小游戏、一个媒体轮播软件Demo,以及这个简单的学习网站。目前来看:Cursor在大块逻辑编码上表现已经很好,但对于上下文以及前后事件的有机联系上还有待提高,这一块需要我们通过高质量的需求描述以及更全面的信息来补全。这儿星河举两个这次开发中遇到的问题作为例子:

  1. 开始在英语游戏和语文游戏里都碰到了音频无法播放的问题,但是英语游戏的问题Cursor很快就解决了,但是语文游戏的问题经过了好几轮对话都没有解决。这个时候星河提醒它,刚才在英语游戏中有相似的问题且它已经成功解决,可以参考相关代码。于是Cursor阅读了英语游戏的相关代码,很快就解决了语文游戏中音频无法播放的问题。Cursor在处理相似问题时,可能需要人为引导才能更好地复用已有的解决方案,这或许是未来AI编程工具需要改进的方向。

  2. 游戏图像涉及大小、位置、颜色等方面的调整,Cursor总是无法很好的帮我们修改。星河反思了一下,其实这儿是描述需求的问题。因为对这种问题,我们通常都会进行“更大一些”“更高一些,贴近屏幕上方”,“颜色更亮一些”这些模糊的描述,AI是很难直观的理解我们的意思的,于是只能一次一次尝试。其实更好的描述是“图像A按180*180像素的尺寸进行显示”,“将图像B放置距离屏幕顶端300像素的地方”,“将图像C的亮度调整至85”等,但这显然需要一定的设计和专业知识。这提醒我们,在使用AI编程工具时,需要尽可能地提供精确、量化的需求描述,才能提高AI的理解能力和工作效率。同时,也说明了设计师和专业知识在AI辅助编程中仍然具有重要价值。

目前来看,Cursor可以极大的扩展程序员的边界,让大家都能“全栈”,同时能极大的提高开发效率。对于完全不懂编程的人,通过Cursor来做一个小的软件应该也不算太难。但是想要开发一个产品级的软件,还是有一定的距离。一个产品可不光是简单的实现功能这么简单,UI界面、交互流程、产品性能、安全性等等问题,都是需要认真的打磨的。AI可以帮助我们快速实现功能,但产品的用户体验和商业价值仍然需要我们的思考和创造。

总的来说,Cursor等AI编程工具确实正在重塑软件开发流程,但它更适合快速原型开发、学习辅助和效率提升,而不适合完全替代人工编程。在一段时间内,AI与人类程序员的协作模式(“人机混合体”)会成为主流,也就是说星河暂时还不用担心被AI完全替代而丢了工作。

星河将最近利用AI开发的软件都提交了Github,包括这个儿童学习网站,需要源码的同学可自取:

https://github.com/lc-hanxi/AI-Program

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

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

相关文章

基于 Python 卷积神经网络的新闻文本分类系统,附源码

大家好,我是徐师兄,一个有着7年大厂经验的程序员,也是一名热衷于分享干货的技术爱好者。平时我在 CSDN、掘金、华为云、阿里云和 InfoQ 等平台分享我的心得体会。今天我来跟大家聊聊一个用 Python 和 Django 打造的人脸识别考勤系统&#xff…

ngx_cycle_modules

Ubuntu 下 nginx-1.24.0 源码分析 - ngx_cycle_modules-CSDN博客 定义在 src/core/ngx_module.c ngx_int_t ngx_cycle_modules(ngx_cycle_t *cycle) {/** create a list of modules to be used for this cycle,* copy static modules to it*/cycle->modules ngx_pcalloc(…

AI 代码生成工具如何突破 Java 单元测试效能天花板?

一、传统单元测试的四大痛点 时间黑洞:根据 JetBrains 调研,Java 开发者平均花费 35% 时间编写测试代码覆盖盲区:手工测试覆盖率普遍低于 60%(Jacoco 全球统计数据)维护困境:业务代码变更导致 38% 的测试用…

【保姆级图解】插入排序 算法详解:直接插入排序、希尔排序

总体引入 在计算机科学的算法领域中,排序是一项基础且重要的操作。它旨在将一组无序的数据元素重新排列为有序序列,以满足特定的顺序要求,如升序或降序。常见的排序算法可分为不同类别,像插入排序,包含直接插入排序和…

为什么ChatGPT选择SSE而非WebSocket?

为什么ChatGPT选择SSE而非WebSocket? 一、ChatGPT回答问题的技术逻辑 ChatGPT的响应生成基于Transformer架构和自注意力机制,其核心是通过概率预测逐词生成文本。当用户输入问题后,模型会先解析上下文,再通过预训练的庞大语料库…

Android 手机指纹传感器无法工作,如何恢复数据?

天津鸿萌科贸发展有限公司从事数据安全服务二十余年,致力于为各领域客户提供专业的数据恢复、数据清除、数据备份、数据取证、数据迁移解决方案,并针对企业面临的数据安全风险,提供专业的相关数据安全培训。 天津鸿萌科贸发展有限公司是众多国…

DeepSeek 在金融领域的应用解决方案

DeepSeek 在金融领域的应用解决方案 一、背景 随着人工智能技术的快速发展,DeepSeek 作为一款国产大模型,凭借其强大的语义理解、逻辑推理和多模态处理能力,在金融行业迅速崭露头角。金融行业作为经济的核心,面临着激烈的市场竞…

织光五载 焕新启航

成都时尚产业协会5周年 以创新为笔,续写国际时尚之都的璀璨篇章 【一场跨越时空的时尚对话】 五年前,一颗名为"成都时尚产业协会"的种子在蓉城落地生根;五年后,这棵新芽已成长为枝繁叶茂的生态之树,用交织…

scala集合

一、数组(Array) 1.数组转换 不可变转可变:arr1.toBuffer,arr1本身没有变化 可变转不可变:arr2.toArray,arr2本身没有变化 2.多维数组 创建:val arr Array.ofDim[Int](3, 4)(3 …

常用 Excel VBA 技巧,简单好学易上手

在日常办公中,我们常常会遇到各种繁琐的数据处理任务,而 Excel VBA(Visual Basic for Applications)作为一款强大的自动化工具,能够帮助我们轻松应对这些挑战。本文将介绍一些常用且简单好学的 Excel VBA 技巧&#xf…

Java 基础 - 反射(1)

文章目录 引入类加载过程1. 通过 new 创建对象2. 通过反射创建对象2.1 触发加载但不初始化2.2 按需触发初始化2.3 选择性初始化控制 核心用法示例1. 通过无参构造函数创建实例对象2. 通过有参构造函数创建实例对象3. 反射通过私有构造函数创建对象, 破坏单例模式4. …

如何在React中集成 PDF.js?构建支持打印下载的PDF阅读器详解

本文深入解析基于 React 和 PDF.js 构建 PDF 查看器的实现方案,该组件支持 PDF 渲染、图片打印和下载功能,并包含完整的加载状态与错误处理机制。 完整代码在最后 一个PDF 文件: https://mozilla.github.io/pdf.js/web/compressed.tracemo…

数据结构与算法-动态规划-线性动态规划,0-1背包,多重背包,完全背包,有依赖的背包,分组背包,背包计数,背包路径

动态规划原理 动态规划这玩意儿,就好比是在拓扑图上玩跳格子游戏。在图论中,咱们是从特定的节点跳到其他节点;而在动态规划里呢,我们是从一个状态 “嗖” 地转移到另一个状态。状态一般用数组来表示,就像 f [i][j]&am…

解决文件夹解压中文字符产生乱码的问题

太tm智能了,本来还想看看解压工具在哪里修改,智能的识别到乱码了。点赞 看到那个地球了吗,点击那个球,这个修改不是侵略性的,不会修改压缩文件本身所以需要在当前页面解压 参考 https://blog.csdn.net/QCSYSZQ/artic…

C++与C的区别

目录 前言 一、从字面上看 二、从编程思想上看 三、C 和 C++ 都有各自适合的领域和特性 四、划重点 前言 本文主要对 C 和 C++ 两种编程语言进行对比区分,便于大家理解 一、从字面上看 1.首先:两者第一个字符完全一致 说明:C++ 完全兼容 C ,凡是合法的 C 程序在 C…

水利水电安全员ABC适合哪些人考?

水利水电安全员证是水利工程建设领域的重要职业资格证书,主要涉及水利水电工程施工安全管理、风险防控和应急处理等工作。那么,哪些人适合考取? 哪些人适合考水利水电安全员? 1. 水利水电工程从业人员 ✅ 施工管理人员&#xf…

Linux中用gdb查看coredump文件

查看dump的命令: gdb 可执行文件 dump文件路径查看函数调用栈 (gdb)bt查看反汇编代码 (gdb)disassemble查看寄存器的值 (gdb)info all-registers如果通过上述简单命令无法排查,还是通过-g参数编译带符号表的可执行文件,再用gdb查看

【前端】【React】useCallback的作用与使用场景总结

一、useCallback 的作用与使用场景总结 useCallback 是 React 提供的一个 Hook,用于缓存函数的引用,避免因为组件重新渲染而导致函数地址发生变化。它返回一个记忆(memoized)后的回调函数,只有当依赖项发生变化时才会…

蓝桥杯备赛学习笔记:高频考点与真题预测(C++/Java/python版)

2025蓝桥杯备赛学习笔记 ——高频考点与真题预测 一、考察趋势分析 通过对第13-15届蓝桥杯真题的分析,可以发现题目主要围绕基础算法、数据结构、数学问题、字符串处理、编程语言基础展开,且近年逐渐增加动态规划、图论、贪心算法等较难题目。 1. 基…

20250410在荣品的PRO-RK3566开发板使用Rockchip原厂的buildroot系统时自动挂载eth0【直接编译进IMG】

【暂时没有找到第一次编译就可以修改的地方!!!!】 rootrootrootroot-X99-Turbo:~/RK3566_RK3568_Linux5.10_V1.2.0$ find . -name interfaces 【完整编译之后,基本确认修改这里有效。】 ./buildroot/output/rockchip_r…