Bilibili-Evolved代码评审清单:提升代码质量的关键检查点
【免费下载链接】Bilibili-Evolved 强大的哔哩哔哩增强脚本 项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved
代码评审是保障Bilibili-Evolved项目质量的重要环节,本清单提供系统性检查框架,覆盖架构设计、类型安全、性能优化等关键维度,帮助开发者在贡献代码前进行全面自检。
架构设计检查
核心模块依赖验证
- 确认新功能是否合理使用src/core中的基础API,避免重复造轮子
- 检查组件是否遵循"单一职责原则",功能复杂的组件应拆分为更小单元
- 验证跨模块通信是否通过src/plugins/hook.ts的钩子系统实现,而非直接依赖
组件结构合规性
- 新组件必须放置在registry/lib/components对应分类目录下
- 入口文件必须命名为
index.ts并使用defineComponentMetadata定义元数据 - 检查是否正确区分内置组件(src/components)与可安装组件(registry/lib/components)

类型安全检查
TypeScript类型定义
- 所有接口和类型定义必须在对应模块的
types.ts中声明,如src/core/settings/types.ts - 检查是否存在
any类型,复杂对象必须定义明确接口 - 泛型使用是否合理,尤其在src/core/ajax.ts等网络请求模块
组件元数据验证
// 正确示例
import { defineComponentMetadata } from '@/components/define'
export const component = defineComponentMetadata({
name: 'video-quality',
displayName: '视频清晰度设置',
// 完整的元数据定义
})
性能优化检查
DOM操作优化
- 验证是否使用src/core/observer.ts的高效观察器,而非频繁DOM查询
- 复杂UI渲染必须使用Vue组件而非原生DOM操作
- 检查是否避免了src/core/spin-query.ts的滥用,轮询间隔应≥300ms
资源加载策略
- 大型依赖应通过src/core/runtime-library.ts动态加载
- 图片资源必须经过压缩并放置在images/compressed目录
- CSS样式应使用src/core/style.ts的样式注入API,避免全局污染
兼容性检查
浏览器支持
- 检查是否使用了ES6+特性而未做转译,参考src/components/compatibilities
- 验证DOM API使用是否添加前缀或polyfill,特别是src/core/封装DOM功能相关功能
版本迁移处理
- 涉及存储结构变更必须在src/core/version.ts中添加迁移逻辑
- 检查是否正确处理了从v1到v2的迁移,参考doc/v1-migrate.md
代码规范检查
编码风格一致性
- 运行
pnpm run prod:lint验证是否符合ESLint规则 - 检查是否遵循CONTRIBUTING.md中的代码风格指南
- 函数长度不应超过80行,超过应拆分为更小函数
提交规范
- 提交信息需清晰描述改动点,无需遵循特定格式但应包含关键信息
- 仅提交源代码修改,不要包含
dist目录下的构建产物 - PR应提交至正确分支:新功能到
preview-features,修复到preview-fixes
安全检查
权限控制
- 用户数据访问必须通过src/core/local-storage.ts的安全存储API
- 检查GM API使用是否遵循最小权限原则,参考src/client/common.meta.json
输入验证
- 所有用户输入必须经过验证,特别是src/components/launch-bar/search-provider.ts等搜索功能
- URL和资源加载必须使用src/core/utils/urls.ts的安全处理函数
文档完整性检查
代码注释
- 公共API必须包含JSDoc注释,示例:src/core/download.ts
- 复杂逻辑必须添加行内注释,解释设计思路而非实现细节
用户文档
- 新功能必须在doc/features添加使用说明
- 配置选项应在组件内通过
description字段提供帮助文本

测试检查
单元测试
- 核心工具函数应添加单元测试,放置在对应模块的
__tests__目录 - 验证src/core/reorder.ts等算法模块的边界情况处理
手动测试清单
- 功能在Chrome和Firefox最新版测试通过
- 开启所有组件时无冲突和性能问题
- 禁用网络情况下的降级处理正常
- 不同屏幕尺寸下UI布局正常
评审流程
- 自我检查:对照本清单完成自查
- 自动化验证:运行
pnpm run prod:build && pnpm run prod:type - 功能测试:在本地环境验证所有功能点
- PR提交:填写详细的改动说明和测试情况
- 代码讨论:根据评审意见进行修改
通过严格执行以上检查点,Bilibili-Evolved项目能够持续保持代码质量,减少bug,提升用户体验。评审过程不仅是质量保障手段,也是团队知识共享和技术提升的重要途径。

【免费下载链接】Bilibili-Evolved 强大的哔哩哔哩增强脚本 项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



