我们希望通过本次笔试,了解你在以下几个方面的能力:
- 需求理解与细节把控:如何解读题目中没有明确说明的需求,并做出合理决策。
- 技术选型与架构设计:你是如何选择工具、框架、语言的,以及背后的理由。
- 实现与扩展能力:在满足基本功能的前提下,如何通过扩展功能提升用户体验。
- 对 AI 的使用:如果你使用了 AI(如 ChatGPT、Copilot 等),请明确说明使用了什么工具、在何处帮助了你,以及你如何基于 AI 提供的结果做出思考与修改。
我们对使用 AI 持开放态度,重点不是“手写所有代码”,而是“能否合理利用工具并展现你的思考和判断”。
请实现一个 TODO List 应用。形式不限,可以是:
- Web 应用(前端或前后端结合)
- 移动端应用(原生/跨平台)
- 命令行工具
- 桌面端应用
目标不是产出一个完整商用产品,而是通过你的实现和文档说明,体现你的思考方式。
- 添加待办事项(包含标题,描述可选)。
- 删除待办事项。
- 标记待办事项完成/未完成。
- 查看待办事项列表。
- 数据持久化(例如文件、本地数据库、浏览器存储等)。
- 任务分类(如工作/学习/生活)。
- 任务排序(如按优先级或截止日期)。
- 提醒/通知功能。
- 对用户体验有帮助的其他功能(例如搜索、批量操作、离线可用等)。
- 多设备协作(需要处理数据冲突)。
- 或其他任何你觉得能为这个应用加分的功能。
- 以上几个选项请选择一项实现,不要添加太多功能。
- 在 GitHub 上创建一个 公开仓库,上传完整代码。
- 确保保留完整的 commit 历史,以便我们了解你的开发思路和迭代过程。
- 请避免一次性提交所有代码。
- 提交历史应能体现你的开发步骤和思考过程。
- 在仓库的根目录提供一个 README.md 文件,简要说明运行方式。
- 提交时,请附带一份单独的说明文档(可为
DOC.md
),内容参考模板文件TODO_Template.md
。