技术原理

Salesforce开发人员教程:Salesforce编程入门

你有志成为一名软件应用程序开发人员吗?是否要在Force.com平台上构建自己的应用程序?如果您对这些问题的回答是肯定的,那么您一定应该考虑成为Salesforce开发人员。

在我以前的博客中,我已经讨论过Salesforce、Salesforce认证,并向您展示了如何使用Salesforce中提供的声明性选项构建自定义应用程序。在本博客中,我将讨论Salesforce中可用于开发应用程序的编程选项。

MVC体系结构

在我开始使用Visualforce和Apex构建应用程序之前,我将首先讨论Salesforce模型视图控制器体系结构。下图概述了Salesforce模型视图控制器体系结构以及不同的Salesforce组件。

mvc - salesforce developer - edureka

模型:模型是Salesforce数据对象、字段和关系。它由标准(帐户、机会等)和自定义对象(您创建的对象)组成。

视图:该视图表示数据的表示,即用户界面。在Salesforce中,视图由visualforce页面、组件、页面布局和选项卡组成。

控制器:控制器是实际应用程序逻辑的构建块。当用户与visualforce交互时,您可以执行操作。

Salesforce in Action

要成为Salesforce开发人员,您首先需要知道Salesforce应用程序是如何工作的。下面是一张图片,它为您提供了Salesforce的全貌。客户机或用户向Salesforce应用程序请求或提供信息。这通常是使用Visualforce完成的。然后,这些信息被传递到应用程序逻辑层,用Apex编写。根据信息的不同,可以从数据库中插入或删除数据。Salesforce还提供了使用web服务直接访问应用程序逻辑的选项。

salesforce in action - salesforce developer - edureka

Salesforce开发人员可以使用声明性或编程性选项进行开发。下面是一幅图片,它为您提供了有关每个用户界面、业务逻辑和数据模型层上可用的声明性和编程性方法的详细信息。要构建用户界面,可以使用声明性方法(使用页面布局和记录类型)或使用编程方法(如visualforce页面和组件)。通常,只有在无法使用声明性方法实现必要的用户界面时,才应使用编程方法。要开发应用程序的业务逻辑层,可以使用工作流、验证规则和审批流程的Salesforce声明性选项,也可以使用触发器、控制器和类等编程方法。要访问数据模型,可以使用对象、字段和关系的声明性方法。您还可以使用元数据API、restapi和批量API以编程方式访问数据模型。

declarative vs programmatic - salesforce developer - edureka

我们已经了解了Salesforce应用程序的工作原理、用于Salesforce开发的MVC体系结构以及Salesforce开发人员可以使用的两种不同方法。现在,让我来讨论一下Visualforce和Apex。

Visualforce

要在Salesforce平台上构建应用程序,您需要知道如何开发用户界面和编写应用程序逻辑。作为Salesforce开发人员,您可以使用Visualforce开发用户界面。Visualforce是Force.com平台的用户界面框架。就像如何使用javascript Angular JS框架为网站构建用户界面一样,您可以使用Visualforce为Salesforce应用程序设计和构建用户界面。

您可以在需要构建自定义页面时使用Visualforce。可以使用Visualforce的几个情况示例是:

到季节{冬、春、夏、秋};

SOQL和SOSL

开发软件应用程序需要知道如何从数据库中插入和检索数据。在Salesforce中,您可以使用SOQL和SOSL从数据库中检索数据。如果您想成为Salesforce开发人员,那么您必须同时了解这两种查询语言。我已经在下面为您提供了这些语言的详细解释:

SOQL代表Salesforce对象查询语言。使用SOQL语句,您可以从数据库中检索数据,如sObject列表、单个sObject或整数计数方法。您可以将SOQL看作是SELECT SOQL查询的等价物。我在下面提供了一个SOQL查询的示例:

ListaccList=[选择Id,Name FROM Account WHERE Name=“YourName”];

SOSL代表Salesforce对象搜索语言。可以使用SOSL语句检索sObject列表,其中每个列表都包含特定sObject类型的搜索结果。您可以将SOSL看作是数据库搜索查询的等价物。我在下面提供了一个SOSL查询的示例:

List>searchList=[在返回Account(Id,Name)、Contact、Opportunity、Lead]的所有字段中查找“map*”;

当您知道数据所在的对象时,可以使用SOQL,当您不知道数据所在的对象的名称时,可以使用SOSL。

类和方法

和其他面向对象编程语言一样,您可以使用Apex开发类和方法。可以将类视为创建和使用单个对象的蓝图。可以将方法视为子程序,它作用于数据并返回值。我已经为您提供了在下面编写类和方法的语法:

classes and methods - salesforce developer - edureka

我现在将向您展示如何在Apex中添加类和方法:

步骤1:从安装程序在QuickFind框中输入Apex类,然后选择Apex类并单击New.

步骤2:在编辑器中添加以下类定义:

公共类HelloWorld{

}

步骤3:在类的左括号和右括号之间添加方法定义:

公共静态void helloWorldMethod(Country\uu c[]countries){

表示(国家/地区:国家){

国家/地区.currency\u c*=1.5;

}

}

第4步:单击“保存”,您的完整类应为:

公共类HelloWorld{

公共静态void helloWorldMethod(Country}c[]countries){

For(Country}c Country:countries){

Country.currency}value}c*=1.5;

}

}

您可以使用上面显示的语法和示例为Salesforce应用程序开发自己的类和方法。要成为Salesforce开发人员,您需要知道的不仅仅是编写类和方法。在接下来的几节中,我将讨论使在Salesforce平台上开发应用程序变得简单和容易的主题。

触发器

每个Salesforce开发人员都必须知道Salesforce触发器的概念。您以前可能在处理其他数据库时遇到过触发器。触发器不过是存储的程序,当您在更改Salesforce记录之前或之后执行操作时,会调用这些程序。例如,触发器可以在执行插入操作之前或在执行更新操作时运行。触发器有两种类型:

Before trigger–在将记录值保存到数据库之前,可以使用Before触发器更新或验证记录值。After trigger–您可以使用After触发器访问由系统设置的字段值,并影响其他记录中的更改。”在下面的操作之前或之后执行

触发器:

插入更新删除合并插入撤消删除

我将向您展示如何通过为您在上面的e类:

步骤1:从country的对象管理设置中,转到Triggers并单击New。

步骤2:在trigger编辑器中,添加以下触发器定义:

trigger HelloWorldTrigger on country c(插入前){

country c=trigger.New;

HelloWorld.helloWorldMethod(countries);

}

上述代码将在每次插入数据库之前更新您所在国家的货币。

调控器限制

您可能知道Salesforce在多租户体系结构上工作,这意味着资源在不同的客户端之间共享。为了确保没有一个客户机独占共享资源,Apex运行时引擎严格执行调控器限制。如果Apex代码超出了限制,预期的调控器将发出无法处理的运行时异常。因此,作为Salesforce开发人员,在开发应用程序时必须非常小心。

批量操作

作为Salesforce开发人员,必须始终确保代码保持调控器限制。要确保Apex遵守调控器限制,必须使用批量调用设计模式。批量操作是指在执行DML操作时提交多个记录。在执行DML操作之前,必须始终确保将行添加到集合中。下面是一幅图片,它为您提供了对批量操作设计模式的完整描述。

bulk operation - salesforce developer - edureka

DMLs和数据操作

,您前面已经看到了如何使用SOQL和SOSL查询从数据库检索数据。现在让我们看一下可以用来将数据插入Salesforce数据库的不同语句。对于Salesforce开发人员来说,必须知道这些语句可以做什么以及如何使用它们。

DML语句

说明插入将一个或多个sObject添加到组织的数据更新修改一个或多个现有sObject记录Upsert创建新记录并更新sObject记录Delete删除一个或多个现有sObject记录Undelete还原一个或多个现有sObject记录Merge Merge s up将同一sObject类型的三个记录合并为一个记录

Visualforce和Apex

,您在成为Salesforce开发人员的过程中取得了长足的进步。接下来我将讨论如何集成visualforce页面和apex代码。您可以使用控制器和扩展来连接visualforce页面和apex代码。

自定义控制器-当您希望visualforce页完全以系统模式运行(即没有权限和字段级安全性)时,请使用自定义控制器。

控制器扩展-当您希望添加扩展标准或自定义控制器功能的新操作或函数时,使用控制器扩展名。

在下面的代码中,我已经向您展示了如何在您的visualforce页面中包含自定义控制器:

在下面的代码中,我已经向您展示了如何在visualforce页面中包含控制器扩展:

异常处理

如果您以前开发过应用程序,那么您一定会来跨越例外。异常是改变程序执行的正常流程的特殊条件。例如,将数字除以零或访问超出界限的列表值。如果您不处理这些异常,那么进程的执行将停止,DML将回滚。

作为Salesforce开发人员,您需要知道如何捕获这些异常,以及捕获它们后要做什么。要捕获异常,可以使用try、catch和finally构造。一旦你抓住例外在上,然后您可以用下面提到的方法处理它:

异常如何处理它DML对记录或字段Visualforce Use使用addError()方法ApexPages.message文件类在异常时发送电子邮件可以通过电子邮件通知开发人员登录自定义对象可以使用将来的方法捕获自定义对象

,直到现在为止Salesforce developer博客您已经看到了如何使用Visualforce开发用户界面,您已经看到了如何使用Apex和触发器、批量操作和异常处理等不同概念编写自定义逻辑。最后,我们将看看Salesforce测试框架。

作为Salesforce开发人员测试

,您需要知道如何测试您编写的代码。测试驱动开发是确保软件应用程序长期成功的好方法。您需要测试应用程序,以便验证应用程序是否按预期工作。特别是,如果您正在为客户开发一个应用程序,那么在交付最终产品之前测试它是非常重要的。Apex为您提供了一个测试框架,允许您编写单元测试、运行测试、检查测试结果并获得代码覆盖率结果。

您可以通过两种方式测试应用程序:

通过Salesforce用户界面,这种测试方式很重要,但不会捕获应用程序的所有用例您可以测试批量功能,可以使用SOAP API或visualforce标准集控制器

测试类通过代码传递多达200条记录,测试类不向数据库提交数据,并用@is test进行注释。我已经向您展示了如何添加测试类,方法是向下面的HelloWorld类添加一个测试类:

@isTest

私有类helloworldestclass{

静态测试方法void validateHelloWorld(){

Country\uu c Country=new Country\uu c(Name=“India”,currency\u c value\uu c=50.0分);

插入国家;

国家=[从Id=国家识别号];

系统资产质量(75,国家货币价值);

}

}

我希望您已经理解了成为Salesforce开发人员所需要了解的所有概念。要深入了解更多细节,请查看我们的Salesforce认证培训,该培训包括讲师指导的现场培训和实际项目体验。如果您有任何评论,请将它们放在下面的评论框中

你也可能喜欢

发表评论

您的电子邮件地址不会被公开。 必填项已用 * 标注

提示:点击验证后方可评论!

插入图片
人工智能培训心得体会 投稿者
我还没有学会写个人说明!
最近文章
  • * 没有更多文章了
  • 热门搜索

    分类目录