Learn how to customize and design applications programmatically on the Salesforce Platform. In this 5-day class, our platform experts will introduce you to Apex (Salesforce’s programming language) and Visualforce markup, so you can customize your Salesforce applications using code and explore how Apex interacts with declarative customizations on the platform. Learn how to retrieve, manipulate, and store data programmatically in data objects (sObjects), write and test custom logic, write Visualforce pages to customize your user interface, and deploy your solutions to another environment. Get an overview of the declarative automation tools available on the platform and a brief introduction to the Lightning Component framework. Plus, explore the nuances of working on a multi-tenant platform s


* Actual course outline may vary depending on offering center. Contact your sales representative for more information.

Learning Objectives

Learn modern tools for developing on the Salesforce Platform using Visual Studio Code, the Salesforce Extension Pack, and the Salesforce CLI.
Write business logic customizations using Apex triggers and classes; those customizations will use SOQL and DML.
Design programmatic solutions that take advantage of declarative customizations.
Describe how your trigger code works within the basics of the Save Order of Execution.
Describe some of the fundamental aspects of designing programs on a multi-tenant platform.
Write Visualforce markup and code to customize the user interface.
Use the built-in testing framework to test Apex and Visualforce.

  • Declarative Automation

  • Create Formula Fields
    Create Roll-Up Summary Fields
    Understand Record Types
    Review Other Automation Tools
    Build a Data Model on the Salesforce Platform

  • Programming with Apex

  • Describe Key Aspects of Apex That Differentiate It from Other Languages, Such as Java and C#
    Describe Why Apex Transactions and Governor Limits Must Be Considered When Writing Apex
    Execute Simple Apex
    Use the sObject Data Type, the Primitive Data Types, and Basic Control Statements in Apex

  • Using SOQL and SOSL to Retrieve Your Org's Data

  • Write a Basic Query Using Salesforce's Query Language, SOQL
    Process the Result of a Query in Apex
    Create a Query Dynamically at Run-Time
    Use SOQL to Query Parent-Child Relationships
    Describe a Relationship Query
    Write a Query That Traverses a Child-to-Parent Relationship
    Write a Query That Traverses a Parent-to-Child Relationship
    Use SOSL to Search Data

  • Using DML to Manipulate Your Org's Data

  • List the Differences Between the Ways You Can Invoke DML Operations
    Write Apex to Invoke DML Operations and Handle DML Errors

  • Deployment

  • What Is Deployment?
    Deploy Code Using Change Sets
    Use the Ant Migration Tool
    Review Managed and Unmanaged Packages
    Explore Salesforce DX

  • Trigger Essentials

  • Describe What a Trigger Is Used For
    Describe the Syntax of a Trigger Definition
    Use Trigger Context Variables

  • Apex Class Essentials

  • Describe How Apex Classes Are Used
    Define an Apex Class
    Determine What Data an Apex Class Can Access

  • The Save Order of Execution, Apex Transactions, and Platform Events

  • Describe Key Points in the Order of Execution
    Describe How Triggers Fit Into and Can Be Impacted by the Order of Execution
    Describe the Lifecycle of an Apex Transaction
    Describe the Memory Lifecycle for Static Attributes
    Use Platform Events for Immediate Error Logging

  • Apex Testing

  • Describe the Apex Testing Framework
    Create Test Data
    Write and Run an Apex Test
    Test Best Practices

  • Strategies for Designing Efficient Apex Solutions

  • Describe Best Practices for Writing Code That Is Easy to Maintain and Extend
    Write Triggers and Classes That Assume Batches of Data as Input
    Write Code That Works Efficiently with the Database, Both in Querying and Using DML

  • Trigger Design Strategies

  • List Declarative Mechanisms You Can Use to Implement Complex Business Logic, What Types of Problems They're Best Used for, and Their Limitations
    Describe Ways in Which You Can Use Declarative Functionality to Improve Your Programmatic Solutions

  • Working with Visualforce

  • Create a Visualforce Page
    Reference a Standard Controller
    Launch a Visualforce Page Using a Custom Button
    Display Data from a Record in a Visualforce Page
    Reference Custom Controllers and Controller Extensions
    Work with List Controllers

  • Visualforce Development Considerations and Testing

  • Describe Common Limit Issues and Security Concerns
    Describe Strategies for Testing Visualforce Controllers
    Write Tests for Controller Constructors
    Write Tests for Action Methods, Getters, Setters, and Properties

  • Lightning Components

  • Create and Surface an Aura Component
    Create and Surface a Lightning Web Component


This course is designed for programmatic developers looking to write programmatic customizations to both business logic and UI layers using Apex and Visualforce. You should have a good understanding of core object-oriented programming concepts and experience building declarative solutions on the Salesforce Platform. This course is also a great foundation builder if you're looking to earn your Salesforce Platform Developer I credential. IMPORTANT: Students are expected to follow the steps detailed in the Computer Set-up Guide for this class if you'll be using your own computer when attending a virtual or in-person class.




The prerequisites include a solid understanding of basic Salesforce concepts and functionality and: 1 year programming in Java (or another object-oriented programming language) Basic data modeling for relational databases Basic SQL Basic HTML Basic JavaScript


Length: 5.0 days (40 hours)


Not Your Location? Change

Course Schedule:

Schedule select
8:30 AM PT -
5:00 PM PT
Filling Fast
Schedule select
8:30 AM PT -
5:00 PM PT
Filling Fast