• 每个文件的代码行数不超过 400 行

  • swift 代码不用考虑 OC 兼容问题。我们的项目大部分代码都是 swift。开源 UI 项目除外。

文档

  • 所有提交的注释的代码都需要写注释说明原因

  • 所有非 UI 、非 Model 的对象都要写注释文档,至少要说明这个对象的用途、设计目的。内部项目使用中文,所有开源项目使用英文。

  • 组件所有公开的类、方法都需要有文档。

代码要求

  • 所有的异步都封装到 promise 或者 Rx 中。正常情况都不会再出现 completion 这种 callback。

项目资源命名

为了区分资源文件名称和代码对象冲突,资源文件命名单词间使用下划线连接。
最开始前缀表示类型。

  • 视频:video

  • 音频:audio

  • 图片

    • 背景:bg

    • 图标:icon

    • 按钮:btn

    • 其他:image

    • 高亮在最后加上 hl(表示 highlight)

资源第二个名字最好是业务/逻辑分类。比如用户模块的等级图标:iconaccount_level,导航的返回按钮:btn_nav_back。因此一个规范的资源命名应该至少有三个单词:类型模块_名称。
项目中可以创建多个 xcassets 文件,在 xcassets 内部也可以创建多个文件夹进行图片资源管理分组。
图片资源推荐使用 pdf 格式。