Skip to content

001 — Yii 目标和价值观

目标

Yii 项目旨在构建和支持 practicalhelpful 的工具和社区。

价值观

我们在工作中表达的价值观支持这一目标。我们努力

实用

高性能

性能是实用性的必要条件。软件不应浪费机器资源或人力资源。

合理的默认值和灵活性

我们更喜欢用户可以自定义的合理默认值和约定。我们寻求灵活性、纪律性和简单性之间的平衡,以满足常见需求。

以实践为导向

我们更喜欢实践而不是理论。例如:

  • 已知用例的解决方案应通过仅提供必要的灵活性来避免过度复杂性。
  • 标准实现应考虑实际使用。
  • 在指导设计方面,经验至少与理论一样有用。
  • 上下文对于确定适当性至关重要。

有帮助

这一价值观指导技术决策和社区活动。对软件功能如何帮助用户的考虑应该指导开发。在社区方面,我们重视任何有帮助的贡献,无论是 pull request 还是论坛中的回答。

当其他原则发生冲突时,我们选择对社区更有帮助的解决方案。

保持简单

解决方案应该简单且富有表现力:

  • 我们使用所需的复杂性,不多不少。
  • 除非别无选择,否则我们避免丑陋的解决方案。
  • 规则越少越好。

明确表达

我们更喜欢明确、显而易见的解决方案和代码。解决方案应该清楚地表达它们的确切作用。例如:

  • 除非抽象有实际目的,否则直接的解决方案比抽象的解决方案更好。
  • 明确的失败比静默失败或掩盖错误更好。
  • 显式转换比 PHP 类型转换更好,类型提示很好。
  • 除非必要,否则不要使用魔术。

保持一致

我们努力在以下方面保持一致:

  • 代码风格
  • 命名
  • 设计
  • 结构
  • 价值观和目标