af483811cb
- 第一、二题改为邮件提交(姓名-学号-QQ.zip,10 月 3 日至 7 日 23:59),接收邮箱在招新 QQ 群公布 - 第三题改为在自己的 Gitea 仓库开发(10 月 6 日前私有、6 日至 8 日公开) - 新增 guides/environment.md 开发环境配置指南;第一题补充“运行环境” - 首页改为正式版,统一求助渠道与工作室诚信、评分规定
54 lines
4.4 KiB
Markdown
54 lines
4.4 KiB
Markdown
# 第三题 把想法做成 App
|
||
|
||
- **类型**:开发挑战(选做)
|
||
- **基础要求**:使用 Swift 开发可交互的 App,界面优先采用 SwiftUI
|
||
- **提交材料**:无需邮件提交;作品放在自己的 Gitea 仓库,面谈时运行展示
|
||
- **AI 规则**:允许辅助开发及生成主要代码,须亲自运行、检查并能说明作品
|
||
|
||
## 任务背景与概述
|
||
|
||
这道选做题邀请你把想法做成能实际操作的 App。可以开发第二题的设计,也可以完成统一的数独游戏。选做与否不影响前两题成绩;完成情况通过作品和当面交流确认。
|
||
|
||
## 任务详细要求
|
||
|
||
### 1. 选择一条路线
|
||
|
||
- **路线 A:开发第二题的设计。** 从自己的方案中选一个范围可控的版本实现;可以在开发时调整方案,并简述与原设计不同的地方。
|
||
- **路线 B:开发数独游戏。** 实现选题、填数与擦除、冲突检查、完成判断和进度保存。完整功能、边界规则和固定题库见[数独开发材料](../development/README.md)。不要求编写出题算法。
|
||
|
||
`development/` 只提供路线 B 的数独详细需求和基础材料;路线 A 依据自己的第二题方案开发。
|
||
|
||
### 2. 两条路线共用的完成标准
|
||
|
||
做出一条从开始到结束可以实际操作的核心流程。用户的输入或选择应改变内容,并获得清楚的反馈;与核心用途有关的数据应在本地保存,彻底退出并重新启动后仍能恢复。还要处理与场景有关的空白、错误、取消等情况,不能只有静态页面。
|
||
|
||
路线 A 请简要说明核心功能、保存的数据、至少两种边界情况及设计调整;路线 B 按[数独详细需求](../development/requirements.md)检查基础功能。额外功能不能代替基础要求。不要求登录、服务器、云同步、复杂架构或应用商店上架。
|
||
|
||
## 作品材料、方式与格式规范
|
||
|
||
在 [git.itouc.cn](https://git.itouc.cn) 上新建自己的仓库,自行组织项目目录;选择数独路线的,把需要的数独材料一并复制进去。按工作室统一要求,**仓库在 10 月 6 日前须设为私有,10 月 6 日至 8 日须改为公开**。项目应包含可打开、可运行的完整源码与必要资源,并在仓库中简要写明打开与运行方法、已完成和未完成的功能、已知问题。无需使用固定的作品说明模板。
|
||
|
||
**无需邮件提交作品、发起 PR 或提交录屏。** 有做这道题的同学,最好在面谈前把自己的仓库链接及项目位置告诉负责人,并在仓库公开后确认负责人能够访问,方便先看代码。具体联系与面谈安排后续通知。面谈时展示实际运行的作品;未完成的部分也可如实说明。
|
||
|
||
## 学习范围与资源
|
||
|
||
根据所选路线按需学习 Swift、界面状态与本地保存。以下是可选的 Apple 官方资料,不要求通读:
|
||
|
||
- [Develop in Swift:SwiftUI 入门](https://developer.apple.com/tutorials/develop-in-swift/welcome-to-swiftui):了解界面、状态变化和用户输入。
|
||
- [SwiftUI Pathway](https://developer.apple.com/swiftui/get-started/):从基础示例继续找适合自己项目的内容。
|
||
- [AppStorage 文档](https://developer.apple.com/documentation/swiftui/appstorage):一种保存简单状态的方式;也可以选择其他合适的本地保存方法。
|
||
|
||
不限定必须使用某个界面组件、数据存储方案或代码结构,重点是实际结果符合需求、本人能检查与说明。
|
||
|
||
## AI 使用规则
|
||
|
||
可以让 AI 帮助拆分开发任务、生成代码、解释、排错和修改,甚至完成主要代码。请亲自运行、检查是否符合需求,并能说明自己怎样验证与调整结果。交流中的 AI 使用情况仅帮助我们了解工作过程,不单独评分。
|
||
|
||
路线 A 中作为第二题提交的设计 PDF 仍遵守[第二题的独立完成规则](02-design.md):问题和方案由本人构思;进入本题开发阶段后,按本题规则使用 AI。
|
||
|
||
## 考察重点
|
||
|
||
面谈会结合真实运行和代码,了解你能否完成核心流程、数据怎样变化和保存、怎样发现结果不符合需求,以及为什么保留或修改某个实现。可能讨论一个小变化及其实现和验证方法;实践环节允许继续使用 AI。不要求背诵全部代码,也不按手写代码比例判断。
|
||
|
||
挑战完成标记根据实际作品与当面考察确认,记录为“未选做”“已尝试”“作品完成待面谈确认”或“挑战通过”。
|