Salesforce的开发和定制需要对Force.com有深入的了解。 Visualforce是一个框架,允许开发人员构建复杂的自定义用户界面,这些界面可以在Force.com平台上本地托管。 Apex是Force.com的本机编程语言,可让您执行流和事务控制语句。但是与通常的编码平台不同,Salesforce由于其多租户云结构而施加了限制。以下是Salesforce开发团队在Force.com上进行自定义时应避免的5个错误
1.达到SOQL查询限制
作为多租户供应商,您不能允许CRM实例上的客户每分钟进行数百万次API调用。因为这会影响同一实例上其他客户的性能。因此,Salesforce保留了限制限制的州长限制。一段时间内的API调用次数,以防止编写错误的代码和耗尽云处理空间。对Salesforce对象查询语言(SOQL)施加一种这样的调控器限制。发出的SOQL查询总数在同步限制中为100,在异步限制中为200。建议遵循 使用Apex代码时的正确准则,例如避免在FOR循环内查询,使用Apex集合,编写详尽的测试用例等。
2.同一对象上有多个触发器
Apex触发器使您可以在事件发生之前或之后对Salesforce中的记录(例如插入,更新或删除)执行自定义操作。但是对于特定情况(例如“插入前”),建议编写单个触发器。编写多个触发器会使系统无法识别执行顺序。而且,被调用的每个触发器都没有自己的调节器限制。而是,所有已处理的代码(包括其他触发器)共享那些可用资源。
3.不批量化您的代码
批量处理代码是指在Salesforce Apex中组合重复性任务,以使代码一次正确处理多个记录。忽略批量代码会导致达到调速器限制。当一批记录启动Apex时,将执行该Apex代码的单个实例,但它需要处理该给定批处理中的所有记录。例如,可以通过插入一批记录的Force.com SOAP API调用来调用触发器。因此,如果一批记录调用相同的Apex代码,则所有这些记录都需要作为批处理,以便编写可伸缩的代码并避免达到调控器限制。
4.麻烦的用户体验
Visualforce允许您使用弹出窗口和图像来开发丰富的UI,但对于用户而言可能会很麻烦。数据和功能超载的页面使单击或导航到按钮变得困难。 Visualforce中的设计应围绕具有定义的工作流和任务之间导航的特定任务。未绑定的数据或大量组件也会影响性能,并有可能会降低视图状态,记录限制,堆大小和总页面大小的调控器限制。
5.保留硬编码的程序
而Salesforce开发则致力于改善公式并保持Apex代码动态。如果环境发生变化,保留硬编码的URL可能会造成灾难性的后果。因此,从长远来看,动态URL的概念是有益的。
继续阅读
寻找免费咨询吗?让我们连接。我们很乐意听取您的意见。
联系我们