菜单

附加功能

相关源文件

目的与范围

附加功能是 App Ideas Collection 项目结构中不可或缺的一部分,旨在扩展基础项目的功能,同时帮助开发人员提高技能。本文档解释了什么是附加功能,它们在项目结构中的作用,以及它们如何促进学习体验。

有关项目标准要求的更多信息,请参阅 用户故事

来源: README.md22-25

什么是附加功能?

附加功能是项目用户故事定义的基准功能的可选增强。它们代表了超越核心要求扩展项目的高级功能,为已完成基本实现的开发人员提供了额外的挑战。

与定义最小可行产品 (MVP) 的用户故事不同,附加功能建议了扩展功能、改进用户体验或实现更复杂技术挑战的方法。

图示:项目描述组件

来源: README.md20-25

附加功能 vs. 用户故事

附加功能在几个关键方面与用户故事不同

特征用户故事附加功能
要求/可选完成必需可选增强
实施顺序首先实施在用户故事之后实施
目的定义核心功能扩展和增强核心功能
复杂性基础到中级中级到高级
学习重点基本概念高级技巧

图示:项目功能实施流程

来源: README.md22-25 Projects/1-Beginner/Calculator-App.md18-38 Projects/1-Beginner/Calculator-App.md40-47

各项目层级的示例

附加功能的复杂性因项目层级而异。以下是来自不同层级的示例:

第一级(初级)示例:计算器应用程序

计算器应用程序定义了创建功能齐全的计算器的基本用户故事,具有标准运算功能,但通过附加功能进行了扩展。

  • 实现符号更改 (+/-) 按钮
  • 添加十进制点支持以进行浮点计算

这表明附加功能如何为简单的应用程序添加有意义的复杂性。

来源: Projects/1-Beginner/Calculator-App.md40-47

第一级(初级)示例:二进制到十进制转换器

Bin2Dec 应用程序有一个附加功能,允许用户

  • 输入任意数量的二进制数字(超出基本要求中的 8 位限制)

这个相对简单的增强功能要求开发人员修改输入验证和计算逻辑。

来源: Projects/1-Beginner/Bin2Dec-App.md28-30

第三级(高级)示例:日历应用程序

日历应用程序包含更复杂的附加功能

  • 事件在日期之间拖放
  • 提醒功能
  • 主题切换(浅色/深色模式)
  • 本地存储实现数据持久化

这些附加功能引入了更高级的概念,如拖放界面、本地存储 API 和主题化。

来源: Projects/1-Beginner/Calendar-App.md18-23

复杂性进展

附加功能通常建立在核心功能之上,并引入了越来越复杂概念。

图示:项目中的功能进展

来源: Projects/1-Beginner/Calculator-App.md18-47 Projects/1-Beginner/Calendar-App.md12-23

附加功能的教育目的

附加功能在 App Ideas Collection 中服务于特定的教育目标。

图示:附加功能的教育目的

来源: README.md10-17 README.md22-25

如何着手处理附加功能

在处理 App Ideas Collection 中的附加功能时

  1. 先完成核心要求 - 在尝试附加功能之前,请先实现所有用户故事
  2. 循序渐进 - 先处理较简单的附加功能,然后再处理更复杂的
  3. 记录您的实现 - 记录您已实现的附加功能,以便存档
  4. 利用附加功能进行探索 - 利用它们作为学习新技术或技巧的机会

在贡献中实现附加功能

在向 App Ideas Collection 贡献新的项目创意时,附加功能应

  1. 与核心用户故事明确分开
  2. 为基础项目提供有意义的扩展
  3. 引入循序渐进的复杂概念
  4. 帮助开发人员获得新技能
  5. 在项目层级范围内保持现实

来源: README.md152-156