Skip to content

CET-6全流程学习系统 - 专为大学英语六级考试设计的综合学习工具,集听力练习、词汇筛选、语音合成于一体,提供模考流程和智能学习体验。

License

Notifications You must be signed in to change notification settings

Kecoya/CET6-Full-Process-Learning

Repository files navigation

CET-6 听力练习与词汇学习系统

一款专为大学英语六级考试设计的综合学习工具,集听力练习、词汇筛选、语音合成于一体,帮助用户全面提升 CET-6 备考效率。

🌟 核心功能

1. CET-6 听力练习应用 🎧

  • 模拟真实考试:完整还原 CET-6 听力考试流程
  • 智能分段播放:对话 → 10秒间隔 → 题目1 → 10秒间隔 → 题目2...
  • 多模式播放
    • 完整播放:自动顺序播放对话和所有题目
    • 单行播放:点击任意对话行单独播放
    • 题目播放:每个题目配有独立播放按钮(🔊)
  • 生词高亮:可选导入单词列表,自动高亮显示对话和题目中的生词
  • 答题系统:在线选择题答题,实时统计正确率
  • 答案解析:提交后显示正确答案和详细解析

2. 智能语音合成

  • 一键发音:点击单词卡片或对话行即时播放发音
  • 多语音选择:提供美式、英式等多种英语语音(男女声可选)
  • 智能重试:首次发音失败自动重试,解决延迟问题
  • 状态反馈:播放时显示进度条和动画效果
  • 语速调节:支持 0.5x - 1.5x 多级语速调节
  • 音色测试:提供男女声测试功能,选择最适合的发音

3. 智能词汇筛选

  • 分类标记:点击选择不懂的单词,快速分类
  • 自动归类:未选中的单词自动归为"已认识"
  • 多状态管理:支持原有认识、新认识、不懂三种状态
  • 进度统计:实时显示总词汇数、已显示数、认识数、不懂数
  • 导入/导出:支持导入词汇文件,完成后自动生成分类文件

4. 数据管理

  • JSON数据加载:支持导入标准 CET-6 听力练习 JSON 格式数据
  • 单词列表导入:可选导入不认识单词列表,实现生词高亮
  • 批量导出:自动生成三个文件(认识词汇、不懂词汇、剩余词汇)
  • 增量学习:保留未学习词汇,支持断点续学

5. 用户体验优化

  • 响应式设计:适配桌面、平板、手机多设备
  • 可视化界面:现代化 UI,卡片式布局,操作直观
  • 进度指示:实时进度条显示播放进度(动态估算总时长)
  • 批量处理:每批显示10个单词,减少认知负担
  • 模考流程:完整模拟 CET-6 听力考试流程,提供沉浸式体验

🚀 快速开始

使用步骤

  1. 导入词汇文件

    • 点击"📁 选择词汇文件"按钮
    • 选择包含英语词汇的txt文件(每行一个单词)
  2. (可选)导入已知词汇

    • 点击"✓ 选择已认识单词文件"按钮
    • 导入之前保存的known_words.txt文件
  3. 选择发音声音

    • 在"🔊 发音声音"下拉框中选择喜欢的语音
    • 推荐使用美式英语女声(默认选中)
  4. 开始学习

    • 点击单词卡片上的🔊按钮听取发音
    • 点击单词卡片选中不懂的词汇(变红色)
    • 点击"✗ 标记为不懂"提交分类
    • 或点击"→ 下一组"自动将全部单词归为认识
  5. 导出结果

    • 学习完成后自动下载三个文件
    • 或点击"💾 立即导出文件"手动导出

浏览器要求

  • 支持 Web Speech API 的现代浏览器
  • 推荐 Chrome、Edge 或 Safari
  • 需要联网下载语音数据

🛠 技术实现

核心技术栈

  • HTML5 + CSS3:响应式界面
  • Vanilla JavaScript:原生实现,无需依赖
  • Web Speech API:浏览器原生语音合成
  • File API:本地文件读写

关键技术特性

1. 语音合成优化

  • 延迟修复:首次发音前自动等待语音加载
  • 错误重试:失败自动重播(最多2次)
  • 状态管理:播放时显示等待⏳和播放中🔊动画
  • 语音选择:动态加载可用语音,支持手动切换

2. 词汇状态管理

allWords: [],           // 全部词汇
remainingWords: [],     // 未显示的词汇池
displayedWords: [],     // 已显示过的词汇
knownWords: [],         // 本次新认识的单词
unknownWords: [],       // 不懂的单词
existingKnownWords: []  // 原有已认识的单词

3. 智能洗牌算法

  • 使用 Fisher-Yates 算法随机打乱词汇
  • 确保学习顺序随机不重复

--

🤖 AI 模型贡献

本项目采用AI辅助编程模式开发,各模型贡献如下:

💠 Claude Code (Anthropic)

  • 整体架构设计:类式代码组织,模块化管理
  • 语音功能实现:发音按钮、状态反馈、错误重试机制
  • 语音选择系统:动态加载、男女声分类、智能默认选择
  • 最佳实践:事件委托、性能优化、代码重构

🅰️ GLM-4-0520 (智谱AI)

  • 基础版本实现:初步单词筛选逻辑
  • UI 设计:卡片式布局、渐变色主题
  • 交互设计:点击选择、状态切换、批量处理
  • 文件处理:文本读取、词汇解析、批量导出

🎤 Kimi-Coding (月之暗面)

  • 语音功能增强:多语音列表、发音参数优化
  • 错误处理:智能重试、异常捕获、延迟修复
  • 状态管理:语音加载检测、自动重试机制
  • 用户体验:加载动画、视觉反馈、优化建议

开发分工

AI 模型 擅长领域 贡献占比
Claude Code 架构设计、语音功能 40%
GLM-4 基础功能、UI实现 35%
Kimi-Coding 语音优化、体验增强 25%

开发模式:AI协作 + 人工审核与调优

📁 文件说明

筛选不懂的单词/
├── CET-6 听力练习应用.html        # CET-6 听力练习主应用
├── 单词筛选应用.html              # 智能词汇筛选应用
├── README.md                      # 项目文档
├── known_words.txt                # 已认识词汇
├── unknown_words.txt              # 不懂词汇
└── remaining_words.txt            # 剩余词汇

🔧 自定义配置

调整每批单词数

VocabularyClassifier 类中修改:

this.batchSize = 10;  // 改为想要的数量

修改语音参数

playPronunciation() 方法中调整:

this.utterance.rate = 0.9;   // 语速 (0.1-10)
this.utterance.pitch = 1.0;  // 音调 (0-2)
this.utterance.volume = 1.0; // 音量 (0-1)

📊 使用场景

CET-6 听力练习

  • ✅ 精听训练:重复播放对话和题目,提升听力理解
  • ✅ 模拟考试:完整模拟 CET-6 Section A 听力流程
  • ✅ 专项练习:单独播放某道题目进行针对性训练
  • ✅ 生词学习:高亮听力材料中的生词,边听边学

词汇学习

  • ✅ CET-6 核心词汇积累与筛选
  • ✅ 听力材料生词标记与高亮
  • ✅ 课本词汇筛选学习
  • ✅ 考研单词分类记忆
  • ✅ 日常词汇量扩充

个性化学习

  • ✅ 听力薄弱专项突破
  • ✅ 词汇基础巩固
  • ✅ 考试流程熟悉
  • ✅ 自主进度控制

🐛 常见问题

听力练习相关

Q: 听力练习的 JSON 数据格式是什么? A: 标准格式如下:

{
  "title": "练习标题",
  "context": "背景信息",
  "dialogue": [
    {"speaker": "W", "content": "女士说话内容"},
    {"speaker": "M", "content": "男士说话内容"}
  ],
  "questions": [
    {
      "question": "问题内容",
      "options": {"A": "选项A", "B": "选项B", "C": "选项C", "D": "选项D"},
      "answer": "A",
      "explanation": "答案解析"
    }
  ]
}

Q: 生词列表文件格式是什么? A: 纯文本文件(.txt),每个单词一行,例如:

abandon
ability
abstract

Q: 进度条显示的时间准确吗? A: 是的。系统会根据对话和题目的词数,加上所有间隔时间(对话间300ms,题目间10秒),动态估算总时长。

Q: 可以调节语速吗? A: 可以。在播放控制面板选择 0.5x 到 1.5x 的播放速度。

词汇筛选相关

Q: 首次点击发音无声音? A: 正常。需等待语音数据加载(1-2秒),系统会自动重试。

Q: 如何添加更多语音? A: 浏览器会自动加载系统语音。安装语音包或更换浏览器可获取更多选项。

Q: 能否离线使用? A: 首次需要联网加载语音数据,后续可离线使用。

Q: 支持哪些浏览器? A: 推荐 Chrome、Edge 或 Safari。需支持 Web Speech API 的现代浏览器。


开发方式:AI辅助编程 + 人工调优 核心AI模型:Claude Code + GLM-4 + Kimi-Coding 更新时间:2025年11月 版本号:2.0.0

版本更新日志

v2.0.0 (2025-11-29)

  • 新增 CET-6 听力练习应用
  • 支持对话和题目智能播放(10秒间隔)
  • 添加进度条动态估算功能
  • 支持生词高亮显示
  • 优化语音合成体验

v1.2.0 (2025-11-26)

  • 智能词汇筛选功能
  • 语音一键播放
  • 多状态和批量管理

About

CET-6全流程学习系统 - 专为大学英语六级考试设计的综合学习工具,集听力练习、词汇筛选、语音合成于一体,提供模考流程和智能学习体验。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages