生成式大模型辅助编程与软件工程实践 · 正式交付文档

技术设计说明书

项目名称: 汤甜甜 · AI编程实践作品集
文档版本: V2.0

1 总体架构

项目采用静态单页网页结构。页面层由index.html构成;展示层为src/styles.css;交互控制由src/app.js负责;纯业务逻辑在src/core.js实现;本地数据在src/storage.js封装;后端数据库并非此实训站点的技术前提。

层次 组件 责任
界面层 HTML/CSS 页面结构、适配和视觉交互
控制层 app.js 导航、事件处理、页面渲染、API请求
业务层 core.js 任务校验、排序筛选、Markdown安全渲染
数据层 storage.js localStorage序列化、读取及异常回退
接口层 Open-Meteo API 城市地理编码、天气及未来四日预报

2 任务模块设计

数据模型包含任务ID、标题、描述、优先级、截止日期、完成状态及时间戳。用户提交后先校验字段,再更新内存任务列表并写入localStorage,随后重新渲染任务统计和列表。导入JSON文件时限制文件大小并验证结构,替换前提示用户确认。

3 笔记模块设计

通过唯一ID选中笔记,编辑内容即时保存。Markdown文本不作为原始HTML直接插入:先进行字符转义,再解析受支持语法;链接限制为HTTP/HTTPS协议,以降低脚本注入风险。

4 天气模块设计

先调用地理编码接口查询城市坐标,再请求天气预报API。设置请求超时与AbortController,统一处理网络异常、地点不存在和API字段缺失。任务及笔记不会发往天气服务。

5 质量与部署设计

使用Node.js内置测试运行器执行33项单元测试;Python启动本地HTTP服务并可进行6项静态资源HTTP检查。静态网页可以直接由GitHub Pages发布。start_server.py仅负责本地服务启动,网页交互的主体实现语言是JavaScript,而不是Python或Java。

6 版本控制

源代码提交于https://github.com/ZhijianLuan-77/TTT-homework,正式公开网站地址记录在项目首页及最终提交说明中。使用独立课程项目目录,不改写账户中的其他科研或学习资料。