Object Oriented Programming 

in Salesforce Apex

Write scalable, maintainable Apex code using OOP best practices

Take your Salesforce Apex skills to the next level with this hands-on course focused on object oriented programming (OOP). You’ll explore key principles like encapsulation, inheritance, and polymorphism, and dive into advanced techniques including dependency injection and dynamic programming. Designed for developers with a foundational knowledge of Apex, this course will help you write more flexible, maintainable code and apply sophisticated OOP strategies to real-world Salesforce development challenges—all guided by an experienced Salesforce instructor.

Gain practical OOP skills to write better Apex code

By the end of the course, you’ll be equipped to write more modular, scalable, and maintainable Apex code using principles like encapsulation, inheritance, and polymorphism. You’ll gain the skills to tackle complex Salesforce development challenges with confidence and clean architecture practices.

Understand the core pillars of OOP in Apex

Learn how encapsulation, inheritance, and polymorphism support better code structure and reuse.

Write flexible, maintainable code

Use interfaces and dependency injection to decouple logic and simplify testing.

Apply dynamic programming techniques

Leverage Type.forName and Type.newInstance to build more adaptable solutions.

Build a dynamic product pricer

Create a real-world pricing engine that handles custom logic and account-specific rules.

Work confidently in real development environments

Use Visual Studio Code and Salesforce tools to build and test Apex code efficiently.

Innovative learning methods to fast-track your OOP skills

Self-paced learning

Progress through the material at a speed that suits you.

Hands-on excercises

Work with real coding examples to apply what you've learned.

Expert Guidance

Benefit from instructor-led support to navigate the course material.

Interactive Coding Challenges

Reinforce key concepts through coding exercises and challenges.

Certificate upon Completion

Showcase your achievement with a certificate that validates your skills.

Who should take the OOP course from Focus on Force?

This course is designed for developers who have a basic understanding of Apex classes and functions, experience using Salesforce development tools – especially Visual Studio Code – and access to a functional Salesforce Developer Org.

  1. Apex developers with basic knowledge of classes and functions.

  2. Salesforce Professionals looking to strengthen their coding practices.

  3. Developers aiming to build advanced features or managed packages in Salesforce.

  4. Anyone who has completed the Focus on Force Introduction to Salesforce Apex course and wants to level up.

Class Outline

Lesson 1

Overview

  •       i.  What is Object Oriented Programming (OOP)?
          ii.  Who is This Course For?
          iii.  Object Oriented Programming Benefits
          iv. Prerequisites

Lesson 2

Encapsulation

  •       a.  What is Encapsulation?
          b.  Benefits
          c.  Best Practices
  •       d.  Case-Insensitive Map Example
          e.  Exercises

Lesson 3

Inheritance

  1.       a.  What is it?
          b.  Feline Example
          c.  Data Inheritance
          d.  Function Inheritance
          e.  Function Overriding
          f.   Super Class / Base Class
          g.  Sub Class / Child Class
          h.  Exercises

Lesson 4

Polymorphism

  1.       a.  What is it?
          b.  Abstract
          c.  Interfaces
          d.  Apex Salesforce Definition
          e.  Methods Only
          f.   Programming to an Interface
          g.  Replace Nested-If with Strategy
          h.  Exercises

Lesson 5

Dependency Injection

  •       a.  What is Dependency Injection?
          b.  Constructor Dependency Injection
          c.  Function Dependency Injection
          d.  Property Dependency Injection
          e.  Runtime Dependency Injection
          f.   Type.forName
          g.  Type.newInstance
          h.  Exercises

Lesson 6

Product Pricer Example

  •       a.  Requirements
          b.  Price one or more products for an account
          c.  Provide discount pricing
          d.  Custom pricing logic per customer

Meet your Salesforce Apex course instructor

Luke Freeland is a 15x certified Salesforce Architect and full-stack developer.


With over a decade of experience in Salesforce development, Luke has created numerous custom Salesforce applications and integrations. He is passionate about training others and has extensive experience teaching Salesforce development and technical skills.

@

Not recently active