DEX 450 Programmatic Development Using Apex and Visualforce in Lightning Experience

Are you a programmer who wants to understand how to customize applications programmatically on the Salesforce platform? In this course, you will learn the core of the Apex programming language and Visualforce markup in order to customize your Salesforce applications. You will get hands-on experience retrieving, manipulating, and storing data programmatically into data objects (sObjects). You will write custom logic using Apex triggers and classes, and test that logic using the built-in testing framework. You will explore how Apex code interacts with declarative customizations on the platform, and the nuances of working on a multi-tenant platform. You’ll then examine common techniques for designing solutions in Apex. These activities will culminate in an exercise building a complex trigger that takes advantage of the declarative aspects of the platform. You will get hands-on experience writing Visualforce pages to customize your user interface as well as a brief introduction to the Lightning Component framework.

Course availability

Overview

Are you a programmer who wants to understand how to customize applications programmatically on the Salesforce platform? In this course, you will learn the core of the Apex programming language and Visualforce markup in order to customize your Salesforce applications. You will get hands-on experience retrieving, manipulating, and storing data programmatically into data objects (sObjects). You will write custom logic using Apex triggers and classes, and test that logic using the built-in testing framework. You will explore how Apex code interacts with declarative customizations on the platform, and the nuances of working on a multi-tenant platform. You’ll then examine common techniques for designing solutions in Apex. These activities will culminate in an exercise building a complex trigger that takes advantage of the declarative aspects of the platform. You will get hands-on experience writing Visualforce pages to customize your user interface as well as a brief introduction to the Lightning Component framework.

 

Who should take this course?

 

This course is designed for programmatic developers, with a good understanding of core object-oriented programming concepts, who additionally have experience building declarative solutions on the Salesforce platform, and need to be able to write programmatic customizations to both the business logic and user interface layers using Apex and Visualforce. The course is also designed to help you prepare for the Salesforce Platform Developer I certification.

 

To prepare for this class, if you do not have experience building declarative solutions on the Salesforce platform, consider completing one of the following:

 

 

To prepare for this class, if you are not programmatic developer, consider completing the following class to get an introduction to Object-Oriented Programming using Apex on the Lightning Platform

 

 

When you complete this course, you will be able to:

  • 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

Prework

Prepare for the course with this Trailmix.

Topics

Declarative Automation

  • Creating Formula Fields
  • Creating Roll-Up Summary Fields
  • Understanding Record Types
  • Review Other Automation Tools
  • Building 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

Use 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?
  • Deployment Using Change Sets
  • Use the Ant Migration Tool
  • Managed & Unmanaged Packages
  • 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 Apex’s testing framework
  • Create test data
  • Write and run an Apex test
  • Testing Best Practices

Strategies for Designing Efficient Apex Solutions

  • Describe 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, for what types of problems they are best used, 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
  • Referencing Custom Controllers and Controller Extensions
  • Working 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