其他
在 Salesforce 上开发 Apex、LWC…
适用于 Salesforce 平台开发,指导 Apex、触发器、LWC、元数据、SOQL 与测试的规范实现。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 35/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 40/100 ×0.15
适用场景
在 Salesforce 上开发 Ape特定
解决思路
- Apex 代码:将可复用函数移入工具类(utility classes),实现关注点分离。
- Apex 代码:使用高效的 SOQL 查询,避免在循环中执行 SOQL 查询。
- Apex 代码:实现错误处理,并在需要时创建自定义异常类。
- Apex 代码:遵循 Salesforce 安全最佳实践,进行正确的 CRUD 和 FLS 检查。
- Apex 代码:类名使用 PascalCase,方法和变量使用 camelCase。
- Apex 代码:保持一致的代码风格,使用正确的缩进和行距。
- Apex 代码:使用 ApexDocs 注释记录类、方法和复杂代码块。
- Apex 代码:实现批量化(bulkification),以高效处理大数据量。
- Apex 触发器:遵循 One Trigger Per Object 模式。
- Apex 触发器:实现触发器处理程序类(trigger handler class),将逻辑与触发器本身分离。
- Apex 触发器:高效使用触发器上下文变量(Trigger.new、Trigger.old 等)。
- Apex 触发器:避免导致递归触发器的逻辑;实现 static boolean flag。
- Apex 触发器:对触发器逻辑进行批量化,以高效处理大数据集。
- Apex 触发器:根据需求正确应用 before 和 after 触发器逻辑。
- Apex 触发器:使用 ApexDocs 注释记录触发器和处理程序类。
- Apex 触发器:在 DML 操作期间,在触发器处理程序类中执行 CRUD 和 FLS 检查。
- Lightning Web Component:使用 @wire 装饰器高效检索数据。
- Lightning Web Component:实现错误处理,并使用 lightning-card 组件显示用户友好的错误消息。
- Lightning Web Component:使用 SLDS(Salesforce Lightning Design System)实现一致的样式和布局。
- Lightning Web Component:使用适当的 ARIA 属性实现无障碍功能。
- Lightning Web Component:使用 lightning-record-edit-form 创建和更新记录。
- Lightning Web Component:使用 force:navigateToComponent 进行组件导航。
- Lightning Web Component:使用 lightning:availableForFlowScreens 使组件可用于 Flow 屏幕。
- 元数据生成:创建必要的自定义字段、对象和关系。
- 元数据生成:设置字段级安全(field-level security)和对象权限。
- 元数据生成:生成自定义标签(custom labels)用于国际化。
- 元数据生成:为配置数据创建自定义元数据类型(custom metadata types)。
- 代码生成最佳实践:优先使用现有对象和字段,而不是创建新对象和字段。
- 代码生成最佳实践:仅包含解释关键设计决策的注释。
- 代码生成最佳实践:随 Apex 类提供完整的 JavaScript、HTML 和 CSS 文件。
- 代码生成最佳实践:仅在明确要求时创建 Lightning Web Components。
- SOQL 最佳实践:使用带有正确 WHERE 子句的选择性查询。
- SOQL 最佳实践:利用关系查询减少查询次数。
- SOQL 最佳实践:使用聚合函数进行汇总计算。
- SOQL 最佳实践:对大数据集实现查询限制和分页。
- SOQL 最佳实践:在 WHERE 子句中使用索引字段以提升性能。
- 测试要求:达到最低 75% 代码覆盖率(目标是 85%+)。
- 测试要求:测试正向、负向和批量场景。
- 测试要求:使用 @testSetup 高效创建测试数据。
- 测试要求:在测试类中避免 SeeAllData=true。
- 测试要求:使用 HttpCalloutMock 模拟外部 callout。
适用边界 · 注意事项
- 非 Salesforce 平台或非 Salesforce 技术栈的项目不适用。
- 未配置或无权访问 Salesforce Org、元数据部署工具或开发环境时不适用。
- 用户未明确要求创建 Lightning Web Components 时,不应主动生成 LWC。