快速上手:用 Visual Studio Code 进行 Salesforce 开发

Visual Studio Code 加 Salesforce Extension Pack 是现代 Salesforce 开发的标准工具链。本项目带你从零搭建:安装 VS Code、配置 Salesforce CLI 与扩展包、创建 Salesforce DX 项目、认证 Playground,然后在编辑器里直接编写带安全最佳实践的 Apex 类、执行 SOQL 查询验证、一键部署到组织,全程无需离开 VS Code。...

📅 2026/10/11 ✍️ ponybai 🏷️ salesforce, headless

Visual Studio Code 入门(01 Get Started with Visual Studio Code)

slide_2

本单元你将了解什么是 IDE 以及它为何对 Salesforce 开发如此重要,安装 Visual Studio Code(Salesforce 平台推荐的编辑器),并熟悉界面——欢迎页、活动栏、集成终端和基本的文本编辑。这是基础:一个配置得当的编辑器,将陪伴你整个 Salesforce 开发生涯。

完成本项目后,你将能够:

  • 了解集成开发环境(IDE)是什么;
  • 学会如何在本地开发 Salesforce 代码;
  • 使用 Salesforce Extensions for Visual Studio Code 与 Salesforce CLI 与组织通信。

简介(Introduction)

slide_3

对开发者来说,好工具至关重要。Salesforce 的开发者工具经历了几个世代:

  • Developer Console——基于浏览器、内置,但功能有限;
  • Force.com IDE——基于 Eclipse,已退役;
  • 现在:Salesforce Extensions for Visual Studio Code!

为什么是 VS Code?

  • 免费、开源、跨平台(Windows、macOS、Linux);
  • 轻量却强大——系统要求极低,几乎任何机器都能跑;
  • 庞大的扩展生态——可为任何语言或平台定制;
  • 微软支持、持续开发、社区庞大。

这个 Quick Start 带你从零到在 VS Code 里编写并部署 Apex。先从基础开始:什么是 IDE?

首先,什么是 IDE?(First, What's an IDE?)

slide_4

IDE(集成开发环境) 通常包含:代码编辑器、构建自动化工具、调试器和智能代码补全。Visual Studio Code 全部提供。

  • 代码编辑器——编写代码的地方(带语法高亮);
  • 构建自动化工具——编译、打包、准备部署;
  • 调试器——逐行执行代码以定位和修复 bug;
  • 智能代码补全——输入时提示方法、变量和语法。

加上 Salesforce Extension Pack 后,它成为 Salesforce 专属 IDE:

  • Apex 语言支持(语法、补全);
  • Salesforce CLI 集成(部署、认证);
  • 从编辑器执行 SOQL 查询;
  • Apex 测试运行器与调试器;
  • LWC 和 Aura 语言支持。

VS Code + 扩展 = 你完整的 Salesforce 开发环境。相比基于浏览器的 Developer Console,这是一次巨大的升级。

安装 Visual Studio Code(Let's Install Visual Studio Code)

slide_5

在任意运行 macOS、Windows 或 Linux 的电脑上安装 VS Code:

  1. 从 code.visualstudio.com 下载并安装适合你操作系统的最新版本;
  2. 启动 Visual Studio Code。

系统要求很低——它基于 Electron 构建,却能惊人地轻量。如果已经装过 VS Code,无需重装,只需确保更新到最新版本。首次启动时你会看到欢迎页,带新建文件、学习资源和界面定制等快捷链接。这是你的起点。

熟悉界面(一):布局与功能(Get Familiar with the Interface (1): Layout & Features)

slide_6

VS Code 的界面为开发效率而设计:

欢迎页(首次启动):快捷链接——新建文件、打开文件夹、最近记录,以及学习资源和界面定制入口。

活动栏(左侧边栏):

  • Explorer——浏览和管理文件;
  • Search——跨项目查找文本;
  • Source Control——Git 集成;
  • Run/Debug——启动和调试代码;
  • Extensions——浏览和安装扩展。

底部栏(状态栏):显示当前的错误、警告(实时!)、行列号、文件编码、通知,以及集成终端的切换开关。

一切都在一个窗口里访问,无需在工具之间切换——这正是它相比 Developer Console 的核心生产力优势。

熟悉界面(二):动手试试(Get Familiar with the Interface (2): Try It Out)

slide_7

动手写第一行代码:

  1. 在 Start 下点击 New file;
  2. 点击 Text File;
  3. 在第 1 行输入 Hello World;
  4. 不保存直接关闭文件——鼠标悬停在标签页的圆点上,点击 X。

注意:因为还没保存,VS Code 不会应用语法高亮。一旦用正确的扩展名保存(.js、.cls、.html),VS Code 会自动检测语言并高亮关键字、字符串和语法。同一个文件,保存了 .cls 扩展名后,VS Code 就变成了 Apex 专属编辑器——这正是 Unit 2 要设置的内容。

让 Visual Studio Code 具备 Salesforce 能力(02 Make Visual Studio Code Salesforce Ready)

slide_8

VS Code 已安装,但它还不认识 Salesforce。本单元你将安装 Salesforce CLI——用于组织管理和源码部署的命令行工具,以及 Salesforce Extension Pack——为 VS Code 加入 Apex、LWC、Visualforce 语言支持和 CLI 集成。你还要设置一个全新的 Trailhead Playground 并获取凭据。完成后,VS Code 将成为一个完整的 Salesforce 开发环境。

安装命令行接口(CLI)(一):它是什么(Install the CLI (1): What It Is)

slide_9

Salesforce CLI 控制着 Salesforce 应用的完整生命周期:

  • 创建和管理组织(scratch org、sandbox、Trailhead Playground);
  • 在本地机器和组织之间同步元数据与代码;
  • 从命令行运行 Apex 测试;
  • 把源码部署到任意组织;
  • 与版本控制(Git)集成以支持团队开发。

通过 CLI,你可以完全无需在浏览器里点击就完成一切。CLI 是 Salesforce DX(现代开发者体验)的支柱。它取代了旧的 Force.com Migration Tool 和 Ant 部署脚本,用现代 npm 包实现组织创建、认证、元数据同步、源码部署和测试执行。VS Code 扩展建立在 CLI 之上——当你右键文件选择 "Deploy This Source to Org" 时,扩展在幕后运行的就是 CLI 命令。

安装命令行接口(CLI)(二):安装与验证(Install the CLI (2): Install & Verify)

slide_10

安装 CLI:

  1. 从 developer.salesforce.com/tools/salesforcecli 下载;
  2. 选择你的操作系统版本;
  3. 运行安装程序——参照 Salesforce CLI Setup Guide;
  4. 安装后打开终端运行 sf update。

预期输出:"Updating CLI..."。这确认了 CLI 已正确安装、在 PATH 上(任意终端可访问)、且是最新版本。如果看到 "command not found",重启终端或检查 PATH。CLI 是基础——没有它,VS Code 扩展无法认证、部署或运行测试。

安装 Salesforce Extension Pack(一):你能得到什么(Install the Extension Pack (1): What You Get)

slide_11

Salesforce Extension Pack 一次装齐所有必备的 Salesforce 扩展:

语言服务:

  • Apex——语法高亮、代码补全、错误检测、重构;
  • Visualforce——VF 页面标记支持;
  • Lightning Components——LWC(HTML、JS)和 Aura 支持。

工具集成:

  • Apex Test Runner——从活动栏运行测试,结果内联显示;
  • Apex Replay Debugger——逐步执行 Apex 代码、检查变量;
  • CLI 集成——右键部署、认证、从菜单创建项目。

一次安装,Salesforce 开发所需的一切都齐了,无需逐个挑选。语言服务尤其强大:Apex 获得完整语法高亮、实时错误检测、理解组织 schema 的代码补全,以及重构工具。

安装 Salesforce Extension Pack(二):安装步骤(Install the Extension Pack (2): Install Steps)

slide_12

把扩展加入 VS Code:

  1. 启动 Visual Studio Code;
  2. 点击左侧活动栏的 Extensions 图标(或 Ctrl+Shift+X);
  3. 搜索 "Salesforce Extension Pack";
  4. 选择 Salesforce 发布的 Salesforce Extension Pack;
  1. 点击绿色的 Install 按钮;
  2. 安装完成后,关闭并重新启动 Visual Studio Code。

为什么要重启?扩展在 VS Code 启动时初始化,干净的重启能确保语言服务、CLI 集成和活动栏新增项都正确加载。

Java JDK 注意:Apex Language Server 等部分功能需要 Java JDK(推荐版本 21,或 17、11)。若看到 Java 相关提示,按项目里的 Java setup 指南配置。重新启动后,VS Code 就是一个完整的 Salesforce 开发环境了!

设置你的 Trailhead Playground(一):创建与凭据(Setup Your Playground (1): Create & Credentials)

slide_13

为本项目创建全新的 Playground:

  1. 滚动到本页底部,点击 Playground 名称,选择 Create Playground,等待 3–4 分钟;
  2. 点击 Launch 打开 Playground;
  3. 如果看到 Get Your Login Credentials 标签——记下用户名、点击 Reset My Password;
  4. 如果没有,从 App Launcher 打开 Playground Starter 按步骤操作;
  5. 查收邮件 → 点击重置链接 → 设置新密码 → 确认。

务必保存用户名和密码——稍后 VS Code 的 CLI 认证会打开浏览器登录页,届时需要它们。密码重置是必需的,因为自动生成的 Playground 密码从不显示给你。

设置你的 Trailhead Playground(二):开发就绪(Setup Your Playground (2): Ready for Development)

slide_14

你的开发环境现在完整了:

  • ✓ Visual Studio Code 已安装;
  • ✓ Salesforce CLI 已安装并验证;
  • ✓ Salesforce Extension Pack 已在 VS Code 中安装;
  • ✓ Trailhead Playground 已创建,用户名密码已知。

你已准备好:本地创建 Salesforce 项目、认证 Playground、编写 Apex/LWC/Visualforce 代码、直接从 VS Code 运行 SOQL 查询、把源码部署到组织、运行 Apex 测试并调试问题。

全部在一个应用——VS Code 里完成。这就是全球专业 Salesforce 开发者使用的同一套技术栈。Unit 3 里,你将用上这套技术栈的每一部分。

使用 Visual Studio Code 进行 Salesforce 开发(03 Use Visual Studio Code for Salesforce Development)

slide_15

现在使用完整工具链。你将创建一个 Salesforce DX 项目、搜索并编辑项目文件、让 VS Code 认证你的 Trailhead Playground、创建带 SOQL 查询的 Apex 类、直接从编辑器执行查询验证其正确性,并把代码部署到组织。这是核心的 Salesforce 开发工作流:本地编写、测试、部署。完成后,你将在 VS Code 里完整经历一次开发周期。

终端 vs 命令面板(一):两种命令方式(Terminal Versus Command Palette (1): Two Ways to Command)

slide_16

VS Code 提供两种与 Salesforce CLI 交互的方式:

集成终端(Integrated Terminal):完整的命令行 shell,直接输入任何 CLI 命令。适合复杂多步操作、查看完整输出、脚本化。用 Ctrl+` 或 Terminal → New Terminal 打开。

命令面板(Command Palette):快速打开窗口,无需记住精确语法就能输入命令。适合单条命令、发现可用操作、键盘驱动工作流。用 Ctrl+Shift+P(Windows)/ Cmd+Shift+P(macOS)打开。

命令面板会显示所有可用命令——输入关键词过滤、选择执行。本模块使用命令面板,因为它可发现性更好:无需记住确切 CLI 语法,只需输入想做的事(如 "create project" 或 "deploy"),面板就会显示匹配的命令。

终端 vs 命令面板(二):快速打开技巧(Terminal Versus Command Palette (2): Quick Open Tips)

slide_17

Quick Open 窗口(Ctrl+P / Cmd+P)是另一个强大工具:

  • 默认以文件搜索模式打开——输入文件名即时跳转;
  • 输入 ? 查看所有可用模式:文件搜索(默认)、命令面板(>)、符号搜索(@)、行号(:)。

本模块全程使用命令面板模式——> 前缀显示 Salesforce 和 VS Code 命令。示例工作流:Ctrl+Shift+P → 输入 "SFDX: Create" → 看到所有 SFDX 创建命令 → 选择一个 → 执行。无需翻菜单、无需鼠标,纯键盘效率。SFDX: 前缀标识该命令是 Salesforce CLI 操作。

创建项目(一):SFDX 项目结构(Create a Project (1): SFDX Project Structure)

slide_18

创建 Salesforce DX 项目——所有源码的容器:

  1. Ctrl+Shift+P 打开命令面板;
  2. 确认提示符以 > 开头;
  3. 输入 SFDX: Create Project 并选择它;
  4. 选择 Standard 项目类型;
  5. 项目名输入 VSCodeQuickstart,回车;
  6. 选择 Desktop 作为创建位置;
  7. 等待新的 VS Code 窗口打开。

项目结构包括:force-app/(源码:Apex、LWC、Aura、Visualforce、元数据)、config/(项目配置)、sfdx-project.json(含命名空间、API 版本、包信息的项目定义)。这是所有 Salesforce DX 开发的标准项目结构。

创建项目(二):刚刚发生了什么(Create a Project (2): What Just Happened)

slide_19

你的 VSCodeQuickstart 项目包含:

force-app/main/default/
├── applications/    — Lightning 应用
├── aura/            — Aura 组件
├── classes/         — Apex 类
├── lwc/             — Lightning Web Components
├── staticresources/ — JS、CSS、图片
├── triggers/        — Apex 触发器
└── ...更多元数据类型文件夹

这是一个空项目——还没有代码,稍后你会添加 Apex 类。生成的结构与 Salesforce 中的元数据类型一一对应,CLI 和 VS Code 扩展根据这个约定理解每个文件该放哪里。这种标准化结构正是"源码驱动开发"工作流的基础。

搜索文件(一):导航与编辑(Search your Files (1): Navigate & Edit)

slide_20

快速查找并编辑项目文件:

  1. Ctrl+P(Windows)/ Cmd+P(macOS)打开文件搜索面板;
  2. 输入 project-scratch-def.json;
  3. 点击结果打开文件;
  4. 点击 Search 图标(或 Ctrl+Shift+F);
  5. 搜索 orgName;
  6. 在 project-scratch-def.json 里把 orgName 的值(冒号后、引号之间)改为 Learning VS Code;
  7. Ctrl+S(Windows)/ Cmd+S(macOS)保存。

orgName 是从本项目创建的 scratch org 的显示名称。修改它是个无害的编辑,演示了 VS Code 如何处理 JSON 配置文件(语法高亮、括号匹配、自动补全)。

搜索文件(二):为什么搜索重要(Search your Files (2): Why Search Matters)

slide_21

VS Code 的搜索能力对真实 Salesforce 开发至关重要:

  • 在整个项目中查找某个字段、类或方法的所有引用;
  • 按文件名搜索,直接跳转到任意组件或类;
  • 跨文件替换——在整个代码库中重命名变量或方法;
  • 正则表达式搜索——查找模式而非精确文本。

搜索面板(Ctrl+Shift+F)按文件分组显示结果,带内联预览,点击任意结果直接跳转到编辑器中那一行。当项目从几个文件增长到几百个时,浏览文件夹树就不现实了——搜索才是你导航的方式。Ctrl+P 搜文件、Ctrl+Shift+F 搜内容,成为你的主要导航工具。

认证到你的 Playground(一):连接 VS Code 到组织(Authenticate (1): Connect VS Code to Org)

slide_22

把 VS Code 连接到 Trailhead Playground,才能部署代码和运行查询:

  1. Ctrl+Shift+P 打开命令面板;
  2. 输入 SFDX: Authorize an Org 并选择;
  3. 回车接受默认登录 URL(login.salesforce.com);
  4. 输入别名 VSCodePlayground;
  5. 浏览器打开 Salesforce 登录页——输入 Playground 用户名密码;
  6. 点击 Allow 授权;
  7. 关闭浏览器——终端返回成功消息。

别名是你在后续命令中引用这个组织的昵称。用一个描述性的名字——你可能连接多个组织(生产、sandbox、scratch、playground),每个都需要唯一别名。

认证到你的 Playground(二):理解连接(Authenticate (2): Understanding the Connection)

slide_23

刚才发生了什么:

  • VS Code 通过 CLI 发起 OAuth 2.0 流程;
  • 浏览器打开 Salesforce 登录页;
  • 你直接对 Salesforce 认证(VS Code 从未看到你的密码);
  • Salesforce 生成访问令牌;
  • 令牌安全地存储在本机;
  • VS Code 现在可以对 Playground 部署、查询、运行测试。

你可以认证多个组织——生产、sandbox、scratch org,每个都有唯一别名,用 CLI 命令切换。认证成功后,VS Code 底部栏通常会显示你当前连接的默认组织,确认连接已激活。

创建 Apex 类(一):生成与编写代码(Create an Apex Class (1): Generate & Write Code)

slide_24

在 VS Code 中创建第一个 Apex 类:

  1. 点击活动栏的 Explorer 图标;
  2. 展开 VSCodeQuickstart → force-app → main → default → classes;
  3. 右键 classes 文件夹,选择 SFDX: Create Apex Class;
  4. 命名为 AccountController;
  5. 如提示,选择 force-app/main/default/classes 作为目标目录;
  6. 把默认模板替换为以下代码并保存:
public with sharing class AccountController {
  public static List<Account> getAllActiveAccounts() {
    return [SELECT Id, Name, Active__c
            FROM Account
            WHERE Active__c = 'Yes'
            WITH SECURITY_ENFORCED];
  }
}

创建时 Apex 语言服务器立即激活——你获得语法高亮、括号匹配和实时错误检测。代码里的 with sharing、WITH SECURITY_ENFORCED 都是最佳实践。

创建 Apex 类(二):代码做了什么(Create an Apex Class (2): What the Code Does)

slide_25

理解 AccountController:

  • with sharing——遵循组织的默认共享规则。用户只能看到有权限访问的 Account。这是 Apex 的非默认选项,不显式声明会让代码在系统上下文运行、绕过共享规则——这是 Apex 数据泄露的头号原因;
  • @AuraEnabled(cacheable=true)——让方法可被 Lightning 组件调用,并在客户端缓存结果;
  • WITH SECURITY_ENFORCED——对查询中的每个字段强制执行字段级安全(FLS)。若运行用户对某字段无读权限,查询会抛异常而非静默返回不该看的数据。

这三者——共享、FLS、可缓存——正是区分生产级 Apex 与教程 Apex 的关键。现在先测试查询再部署——这是 VS Code 最强大的功能之一。

查询(一):部署前测试 SOQL(Query (1): Test SOQL Before Deploying)

slide_26

VS Code 可以直接对你认证的组织执行 SOQL 查询——部署前先测试!

  1. 在 AccountController.cls 第 3 行,只高亮 SOQL 查询部分(SELECT ... WHERE Active__c = 'Yes'),不要高亮 WITH SECURITY_ENFORCED;
  2. Ctrl+Shift+P 打开命令面板;
  3. 输入 SOQL;
  4. 选择 SFDX: Execute SOQL Query with Currently Selected Text;
  5. 选择 REST API,回车;
  6. 在 Output 标签页查看结果!

你会看到从 Playground 返回的记录——一个显示找到记录数的摘要。这确认你的查询在部署类之前就能工作。这比传统流程(写代码 → 部署 → 建测试页 → 才发现 SOQL 有拼写错误)快得多。

查询(二):为什么部署前测试(Query (2): Why Test Before Deploying)

slide_27

传统的 Apex 开发周期:写代码 → 部署 → 测试 → 修复 → 部署 → 测试 → 修复 → 部署……每次部署都耗时,迭代缓慢。

有了 VS Code 的 SOQL 执行:写查询 → 高亮 → 执行 → 秒级看到结果 → 修复语法 → 重新执行 → 确认可用 → 然后再部署完整类。

查询独立于类部署进行测试,意味着:

  • 反馈更快——秒级而非分钟级;
  • 部署更少——代码就绪才部署;
  • 尽早发现语法错误——缺逗号、字段名写错、WHERE 子句错误;
  • 验证数据存在——写处理逻辑前先看到真实记录。

这就是专业工作流:先测查询,再写类。在 Developer Console 流程里,你要写完整个类、保存(即部署)、打开 Execute Anonymous 写测试代码,才发现 SOQL 有语法错误——每轮 30-60 秒。VS Code 则 5 秒内出结果。

部署(一):把代码推到组织(Deploy (1): Push Code to Your Org)

slide_28

把 AccountController 类部署到 Trailhead Playground:

  1. 在 Explorer 中右键 classes 文件夹;
  2. 选择 SFDX: Deploy This Source to Org;
  3. 在 Output 标签页观察部署进度;
  4. 看到成功消息:"SFDX: Deploy This Source to Org successfully ran"。

就这些!你的 Apex 类现在已在 Trailhead Playground 里上线。幕后:VS Code 调用 CLI → CLI 打包源码 → 发送到认证的组织 → Salesforce 编译 Apex → 部署完成。一次右键、一条命令,代码从编辑器直达组织。对比旧的 Change Set 或 Force.com IDE 流程——更快、更简单、直接集成在编辑器里。

部署(二):完整开发工作流(Deploy (2): The Full Development Workflow)

slide_29

你已经在 VS Code 中完整经历了 Salesforce 开发工作流:

  1. 创建项目——SFDX: Create Project,生成标准结构;
  2. 认证——SFDX: Authorize an Org,OAuth 连接组织;
  3. 编写代码——SFDX: Create Apex Class,完整语言支持;
  4. 测试查询——从编辑器执行 SOQL,部署前验证;
  5. 部署——SFDX: Deploy This Source to Org,代码上线。

全部在一个应用里完成,无需浏览器标签页、无需独立工具。在 Developer Console 时代,你需要切换浏览器标签页来写代码、测查询、管理部署。有了 VS Code + Salesforce Extension Pack,这一切都在一个编辑器里。这就是专业开发者每天使用的现代 Salesforce 开发体验。

临别感言(一):你学到了什么(Parting Thoughts (1): What You've Learned)

slide_30

你已经从零搭好并使用了完整的 Salesforce 开发工具链:

已安装的工具:

  • Visual Studio Code——编辑器;
  • Salesforce CLI——命令行支柱;
  • Salesforce Extension Pack——语言服务 + CLI 集成。

练习的技能:

  • 创建 Salesforce DX 项目;
  • 导航和搜索项目文件;
  • 认证 Salesforce 组织;
  • 用安全最佳实践编写 Apex(with sharing、WITH SECURITY_ENFORCED);
  • 部署前测试 SOQL 查询;
  • 从 VS Code 部署源码到组织。

这是真实开发——与财富 500 强公司 Salesforce 开发者使用的工具和工作流完全一致。Developer Console 适合快速检查,但真正的开发发生在 VS Code 里。

临别感言(二):下一步(Parting Thoughts (2): What's Next)

slide_31

有了基础,探索更高级的 VS Code + Salesforce 能力:

  • Apex Replay Debugger——逐步执行 Apex 代码、设置断点、在运行时检查变量;
  • 自定义编辑器设置——主题、键位绑定、Salesforce 开发模式代码片段;
  • Git 集成——从 Source Control 面板提交、推送、拉取、管理分支;
  • 开发者流水线——用 CI/CD 自动化构建、测试和部署。

下一步 Trailhead:Apex Basics & Database、Lightning Web Components Basics、Build a CI/CD Pipeline with Salesforce DX。VS Code 只是开始,Salesforce DX 生态广阔无垠。开始构建吧!


文章来源:Trailhead - Quick Start: Visual Studio Code for Salesforce Development