首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >背单词小程序开发记录

背单词小程序开发记录

原创
作者头像
陈华山
修改2026-04-29 11:12:54
修改2026-04-29 11:12:54
3610
举报
文章被收录于专栏:AI应用案例AI应用案例

只要3小时,就可以用AI完成一个真实可用的背单词小程序,还有必要再去单独买背单词的工具吗?

单词好简答 · 开发纪要

一、项目概述

单词好简答 是一个面向小学生英语单词学习场景的微信小程序,目标是通过“背词 + 复习 + 游戏 + 成长反馈 + 自动听写”形成完整的学习闭环,降低家长陪学成本,提升孩子的主动学习动力。

本轮开发聚焦于 V1.0 MVP 的核心功能落地,并完成了从数据层、学习引擎、游戏化机制、听写模式,到本地多账号管理的整体打通。


二、开发目标

本阶段主要目标包括:

  1. 建立原生微信小程序基础工程结构
  2. 构建完整词库数据源与分级加载能力
  3. 实现最小可用学习页与记忆曲线复习机制
  4. 实现词库页、详情页与自动听写模式
  5. 建立成长系统、金币系统、宠物互动系统
  6. 完成拼字游戏闭环与无尽模式优化
  7. 支持本地多账号管理与数据隔离
  8. 完成 MVP 发布前的稳定性与体验打磨

三、已完成的核心模块

1. 全局工程初始化

已完成:

  • app.json 全局配置
  • app.wxss 全局样式
  • app.js 启动逻辑骨架
  • sitemap.json 配置,消除开发者工具警告

底部导航目前包含:

  • 学习
  • 词库
  • 宠物
  • 我的

2. 页面骨架与基础页面体系

已建立以下页面:

  • pages/learn/index
  • pages/words/index
  • pages/profile/index
  • pages/pet/index
  • pages/game/index
  • pages/detail/index
  • pages/dictation/index

页面职责说明:

  • learn:日常学习主页面
  • words:词库 / 错题 / 已掌握管理
  • profile:账号与年级学期配置
  • pet:宠物成长与金币消耗页
  • game:拼字游戏赚金币页
  • detail:单词详情页
  • dictation:自动听写页

3. 全量词库建设

已完成:

  • 外研社小学英语词汇表.md 结构化提取全量词汇
  • 生成 utils/fullDictionary.js
  • 完成 1a ~ 6b 全部词条补全

每个词条当前统一具备字段:

  • word_id
  • grade
  • semester
  • word
  • meaning
  • phonetic
  • memory_tip
  • sentence

说明:

  • 当前词库已可直接支撑学习、详情、游戏、听写四类场景
  • 词条已消除“词义待补充”等占位残留

4. 学习页与记忆曲线机制

已完成:

  • 基于 userProgress 的本地缓存管理
  • 记忆状态结构:
    • memoryLevel
    • nextReviewTime
  • 点击“认识”时按简化艾宾浩斯曲线安排复习
  • 点击“不认识”时进入错题复习链路
  • 每日任务自动筛选:
    • 新词
    • 到期复习词
  • 学习完成后展示结算报告
  • 增加“再学 5 个”功能
  • 当本学期单词学完后自动跨学期 / 跨年级补词
  • 顶部提示“本学期已学完,当前为扩展词汇”

5. 词库页与详情页

已完成:

  • 词库页分为:
    • 待复习
    • 已掌握
  • 展示星级记忆等级(⭐)
  • 展示自然语言复习时间:
    • 今天可复习
    • 明天复习
    • 后天复习
    • X月X日复习
  • 支持点击单词进入详情页

详情页功能:

  • 复用学习页卡片结构
  • 展示:
    • 英文
    • 音标
    • 图片占位 / 图片位
    • 中文释义
    • 记忆法
    • 例句
  • 自动发音一次
  • 支持重复播放

6. 自动听写模式

已完成:

  • 新建 pages/dictation/index
  • 支持从词库页一键进入自动听写
  • 沉浸式深色背景,弱化视觉干扰
  • 不显示英文,仅显示中文释义
  • 支持:
    • 开始 / 暂停
    • 上一个 / 下一个
    • 重复朗读当前单词
    • 语速 / 间隔设置

专业级优化:

  • 听写定时逻辑改为:
    • 发音真正结束后
    • 再开始 N 秒倒计时
    • 倒计时结束自动切词
  • 重复播放会重置倒计时
  • 听写页支持 wx.setKeepScreenOn
  • 全局配置了 requiredBackgroundModes: ["audio"]

该功能目标是:

  • 彻底减轻家长人工报听写压力

7. 游戏化:拼字游戏

已完成:

  • 从固定关卡升级为无尽模式
  • 加入:
    • 红心生命值
    • Combo 连击
    • 分数统计
    • Game Over 结算
  • 根据拼对数量与连击发放金币奖励

关键体验优化:

  • 处理了空格词 / 短语词拼写逻辑
  • 处理了重复字母(如 apple)的用户体验问题
  • 现在重复字母不要求用户区分“第几个相同字母”
  • 错误后不再直接强制结束,而是:
    • 展示该单词完整拼写
    • 允许孩子选择继续挑战或返回学习

8. 成长系统与奖励系统

已完成:

  • 新建 utils/reward.js
  • 建立 userGrowth 本地缓存模型:
    • coins
    • exp
    • level
    • petStatus
  • 经验逻辑:
    • 新词认识:+2 EXP
    • 旧词复习:+1 EXP
  • 等级逻辑:
    • 100 EXP 升一级
  • 金币逻辑:
    • 小游戏结算发金币
    • 学习完成发放 5 金币全勤奖励

学习页已接入:

  • 宠物状态栏
  • 当前等级 Lv.X
  • 经验进度条
  • 获得经验时的小提示:+2 EXP / +1 EXP

9. 宠物系统

已完成:

  • 新建 pages/pet/index
  • 展示:
    • 宠物 Emoji
    • 等级
    • 经验进度条
    • 当前金币数
  • 支持“喂食宠物(消耗 10 金币)”

互动反馈:

  • 金币足够时可喂食
  • 喂食后:
    • 震动反馈
    • 宠物放大动画
    • +1 💖 浮动提示
  • 金币不足时:
    • 主按钮自动切换为“去玩拼字游戏赚金币 🎮”
    • 可直接跳转小游戏
  • 额外保留长期入口:
    • “🎮 挑战拼字游戏赚金币”

10. 本地多账号管理

已完成:

  • 当前昵称可点击修改
  • 修改昵称时会自动迁移:
    • userProgress_旧用户名
    • userGrowth_旧用户名
  • 支持添加多个本地学生账号
  • 支持账号切换
  • 当前账号在操作菜单中带 标记
  • 本地维护账号列表缓存:localAccounts

说明:

  • 同一台设备上的多个孩子可以各自拥有:
    • 不同昵称
    • 不同学习进度
    • 不同金币与成长数据
    • 不同年级/学期配置

四、关键技术与架构优化

1. 音频单例统一管理

已抽离 utils/audio.js,统一管理:

  • getSharedAudioContext()
  • playWordAudio()
  • stopWordAudio()
  • setAudioEndedHandler()
  • clearAudioEndedHandler()

收益:

  • 避免多页面重复创建音频实例
  • 降低页面切换后音频失效风险
  • 听写、学习、详情三类页面统一调用音频能力

2. 生命周期健壮性处理

已处理:

  • 学习页音频 onHide / onUnload 安全停止
  • 听写页后台保持与退出释放
  • 小游戏自动切关定时器在 onHide / onUnload 中清理
  • 多页面进入退出时状态重置更干净

3. 空状态与容错处理

已在以下页面增加空状态:

  • 学习页
  • 词库页
  • 游戏页

避免:

  • 词库为空时的白屏
  • 无数据时的运行时异常
  • 页面进入后没有内容但用户不知原因的问题

五、当前 V1.0 已形成的业务闭环

学习闭环

背词 → 认识 / 不认识 → 进入记忆曲线 → 复习 / 错题回流

成长闭环

背词 → 获得 EXP → 升级 → 获得成长反馈

金币闭环

完成学习 → 获得保底金币 → 小游戏连击赚金币 → 宠物消费金币

家长减负闭环

词库选择 → 一键进入自动听写 → 系统自动报词 → 孩子自主完成练习


六、当前版本状态

版本状态

  • 已进入 V1.0 Code Freeze
  • 不再主动增加新功能代码
  • 当前重点可转入:
    • 真机联调
    • 产品验收
    • 文案与视觉细节打磨
    • 发布准备

当前代码状态判断

从 MVP 功能完整度和核心稳定性来看,当前版本已经具备:

  • 基础可用性
  • 主链路闭环
  • 游戏化反馈
  • 多账号隔离
  • 听写模式差异化能力

可进入后续上线前测试阶段。


七、建议的下一阶段工作(封板后)

虽然 V1.0 已封板,但后续建议可以进入以下非本轮代码范围工作:

  1. 图片资源补齐:给词条逐步补充 image_url
  2. 词库教研审校:统一音标风格与例句风格
  3. 真机测试:重点测音频、听写、后台切换、账号切换
  4. 发布素材:
    • 小程序头像
    • 简介文案
    • 功能截图
  5. 运营埋点与留存策略(后续版本)

八、结语

本轮开发已完成从“基础背词工具”到“带成长反馈、可自动听写、具备宠物和金币激励”的一整套小程序 MVP 架构搭建。

单词好简答 当前已经具备较强的产品辨识度:

  • 能学
  • 能复习
  • 能玩
  • 能成长
  • 能自动听写
  • 能多账号隔离

这为后续版本的商业化升级和家长场景扩展,打下了较完整的底层基础。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 单词好简答 · 开发纪要
    • 一、项目概述
    • 二、开发目标
    • 三、已完成的核心模块
      • 1. 全局工程初始化
      • 2. 页面骨架与基础页面体系
      • 3. 全量词库建设
      • 4. 学习页与记忆曲线机制
      • 5. 词库页与详情页
      • 6. 自动听写模式
      • 7. 游戏化:拼字游戏
      • 8. 成长系统与奖励系统
      • 9. 宠物系统
      • 10. 本地多账号管理
    • 四、关键技术与架构优化
      • 1. 音频单例统一管理
      • 2. 生命周期健壮性处理
      • 3. 空状态与容错处理
    • 五、当前 V1.0 已形成的业务闭环
      • 学习闭环
      • 成长闭环
      • 金币闭环
      • 家长减负闭环
    • 六、当前版本状态
      • 版本状态
      • 当前代码状态判断
    • 七、建议的下一阶段工作(封板后)
    • 八、结语
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档