通过 Salesforce 开发人员体验 (DX) 改善您的工作体验
已发表: 2022-10-28对于 Salesforce 专业人士来说,Salesforce DX 是一个令人着迷的版本。 这是程序员为系统构建和分发程序的方式的转变。 使用这种新方法,Salesforce 开发人员可以使用更好、更新的开发流程,并附带支持工具。 该工具旨在通过促进团队成员之间更有效的管理和沟通来提高 Salesforce 应用程序云的效率和能力。 传统上,部署一直是 Salesforce 开发的痛点。 尽管如此,使用 Salesforce DX,您可以从开发的第一阶段到产品发布的最后阶段访问最有效和最先进的工具。 它可以帮助企业利用数字市场机会并加快开发和部署高质量应用程序。 在此博客中访问有关 Salesforce 开发人员体验的最新信息。
目录
什么是 Salesforce Dx(开发人员体验)?
Salesforce Developer Experience (DX) 是一种在 Salesforce 闪电平台上的整个生命周期内管理和构建应用程序的综合方式。 它汇集了 Lightning 平台的最佳部分,以实现源驱动开发、集成团队合作以及在 Salesforce 上构建自定义应用程序的新级别的敏捷性。 这意味着 Salesforce DX 有一个集中的源代码控制系统,可以帮助拥有多个开发人员的团队防止事实来源发生变化。
事实来源是所有团队成员都可以找到配置和构建应用程序的主要代码存储库的地方。 这降低了代码被覆盖的可能性,并允许在不会影响整个产品的单独环境中测试功能。
Salesforce DX 还具有可解锁的包,这些包具有更多功能,可以更轻松地管理组织更改。 将 DevOps 工具集成到环境中可以更好地为您的 Salesforce 开发管道工作。
Salesforce DX 的亮点包括
您的工具按您的方式完成。 借助 Salesforce DX,您可以使用作为开发人员已经熟悉的工具。
- 在制作软件时使用最佳实践的能力。 源代码和元数据保存在组织之外,使团队更容易开发 Salesforce 应用程序。 事实的来源不是组织,而是您的版本控制系统。
- 当您拥有强大的命令行界面 (CLI) 时,使用您的 Salesforce 组织进行开发、持续集成和交付会容易得多。
- 您可以使用灵活且易于更改的临时组织构建开发和自动化环境。 使用这种新型组织,构建您的应用程序和包变得更加容易。
- 您可以将任何 IDE 或文本编辑器与 CLI 和外部化源一起使用。
- 您可以使用 Salesforce Extensions for VS Code 加快应用程序开发。 这些工具具有用于处理临时组织、Salesforce Apex、Lightning 组件和 Visualforce 的功能。
Salesforce DX 的优势是什么?
这有助于有效的团队合作和成长。
- 结果是一个更灵活和有效的发布周期过程。
- 开发人员可以将他们喜欢的编码环境用于命令行界面 (CLI)、文本编辑器(VIM、Sublime Text、Atom 等)等。
- 允许您的代码被持续测试和轻松集成。
- 需要本地开发环境,以便程序员获得 DX 的实践经验。
Salesforce DX 的缺点是什么?
- 在实现某些功能之前,该平台可能包含错误。
- 由于通常需要大量的行命令和特定的方向,系统管理员可能会发现故障排除具有挑战性。
- 随着开发人员习惯了定制平台,他们面临着陡峭的学习曲线。
Salesforce DX 工具和功能
并非每个团队都需要每个 DX 功能,不同的团队成员会以对他们有意义的方式使用 DX 工具。
A. Salesforce Cli
基于 Ant 的 Force.com 迁移工具已被 Salesforce 命令行界面 (CLI) 取代。 它具有 Ant 的所有功能以及向组织推送和从组织拉取元数据、将元数据转换为 SFDX 格式以及管理其他 DX 功能的能力。 如果您是开发人员,Salesforce CLI 将使 DX 的强大功能触手可及。
B. 集成开发环境(ide)
Salesforce 还发布了 Visual Studio Code 扩展,使轻量级、可扩展的代码编辑器成为与 DX 一起工作的优秀 IDE,有效地取代了基于 Eclipse 的 Force.com IDE,后者已经退役。 Salesforce 继续改进其 IDE 工具,并计划在今年发布基于 Web 的开发环境 Code Builder。
C. Scratch 组织
Scratch 组织是完全可定制的、源驱动的开发环境,可用于模拟 Salesforce 组织。 这些适用于自动化测试以及应用程序开发。
D. 开发中心
Dev Hub 对于创建或管理临时环境(也称为 Scratch 组织)非常有用。 通过在您的生产组织中启用 Dev Hub 功能,您可以轻松创建临时组织。 在 Setup > Dev Hub 下有两个切换,第一个启用 Dev Hub 功能,而第二个允许开发人员控制的打包。
E. 源头驱动开发
通过 Git 等现代技术,版本控制系统使多开发团队能够转移事实来源并进行协作。
F. 托管包
因为没有关注点分离,所以打包元数据可以避免非结构化的组织,这可能更难以管理和修改。 Salesforce 已经允许团队将元数据打包成可以在 DX 之前安装在组织中的逻辑单元。 尽管如此,DX 还是推出了第二代封装 (2GP),与 1GP 相比有几处改进。
最显着的变化是 2GP 使版本控制而不是打包组织成为包元数据的真实来源。 未锁定的包是这些包的另一个名称。 如果您的团队决定打包,请使用未锁定的包来确保具有版本控制的最佳实践 DevOps 流程。
G. Salesforce Dx 的新元数据格式
Salesforce DX 还引入了一种新的元数据格式。 当您切换到 DX 格式时,大型、复杂的元数据类型(如自定义对象和翻译)被分解为更易于管理的子组件。 此更改使开发人员更易于管理 IDE 中的文件。 新的元数据格式还通过减少合并冲突的可能性使整个团队受益。 当开发人员和管理员更改重复文件时,他们经常会遇到 Git 无法解决的合并冲突。 通过将元数据分成更小的、独立的文件,团队成员更有可能在不同的文件中工作,并且需要解决的合并冲突更少。
H. Salesforce 的 Dependency Api
在 Salesforce API 的增强功能中,Dependency API 是另一个 DX 功能,可帮助团队理解和管理具有大量元数据依赖关系的组织的复杂性。 Dependency API 仍处于测试阶段,但它可用于确定哪些组件引用了哪些其他组件,反之亦然。
你有一个愿景
我们有办法让您到达那里
如何完美设置您的 Salesforce Dx 环境?
- 设置 Salesforce DX 环境
- 设置 VS 代码环境
- 使用 VS Code 设置 Salesforce DX Experience
- 通过命令面板创建 Salesforce DX 项目
- 通过命令面板授权您的非 DevHub 组织
- 通过命令面板创建 Lightning Web 组件
- 将组件部署到组织
使用 Salesforce Dx 的工作流程
Salesforce DX 工作流示例
没有适用于每个团队的单一工作流程,但以下示例显示了通常如何使用功能分支模型。 部署可以使用 CLI 完成,开源软件的工具链可以自动执行该过程。 或者,一个 DevOps 解决方案可以处理整个过程。
- 在开始一项新工作之前,从 Git 存储库的主要组件创建一个功能分支。
- 使用 Git 存储库中的定义文件来创建临时组织。
- 可以在临时组织或 IDE 中进行更改,临时组织和分支将保持同步。
- 一旦工作准备好进行检查,请提出拉取请求并将其交给队友。
- 在审查和任何请求的更改之后,将分支合并到主线中。 然后,摆脱分支。
- 该工作已准备好进行 UAT 或 QA! 您的测试环境可以通过持续集成作业自动设置。
- 测试完成后发布到生产环境。
结论
我们已经完成了对 Salesforce DX 功能的调查。 谈到 Salesforce DX,您无需花费一分钱就可以自由地试验多种不同的工具和功能。 SFDX 元数据格式和不断增加的 Salesforce 开发人员工具简化了开发和 DevOps; 然而,并不是每个团队都决定使用临时组织或第二代打包。 Salesforce 开发人员可以从其许多新的有益功能中受益匪浅。 Salesforce 的 DX 为管理员和开发人员的协作提供了更多的余地。 DX 将在接下来的几个月或几年内发展和开发新的令人兴奋的功能。