Skip to content
Home » Blog Archive » Essential Salesforce Developer Vocabulary for Beginners

Essential Salesforce Developer Vocabulary for Beginners

Are you new to Salesforce development and feeling overwhelmed by the technical vocabulary? Don’t worry, I’m here to help! In this post, I’ll provide you with an introduction to essential Salesforce developer vocabulary. We won’t dive too deep into each topic, but by the end of this post, you’ll have a good foundation to build on. Let’s get started with learning the basics!

Salesforce Overview

Hmmm, it’s hard to explain Salesforce briefly. It would take multiple posts to cover all of its capabilities. But as a big fan of Salesforce who has been using it since 2010, I’ve personally witnessed how it has grown and expanded over the years, constantly adding new clouds, features and enhancements. Let me try to give you a brief description:

In the world of Salesforce development, you’ll often hear other developers and admins talking about:

  1. “Objects”
  2. “Records”
  3. “Fields”.

Understanding what these terms mean is important as you will be using them in every project you work on.

Essentially, these terms describe how data is stored and organized in Salesforce. If you’re familiar with databases, you can think of objects as your table and fields and records as the same as in any database. But if you haven’t worked with databases before, no worries! Let me explain it using an Excel sheet example.

Sample Excel sheet containing student information to be moved to Salesforce objects.

As you can see, we have an Excel sheet listing the students, their grades, and their overall report card marks. If we want to move this Excel sheet to Salesforce, we can follow these steps:

  • The ‘Student’ Excel sheet tab would become a Salesforce object.
  • The ‘student name’, ‘grades’, and ‘marks’ would become the fields you need to create in your object.
  • The rows in the Excel sheet (Row 2, Row 3, etc.) would become your records in Salesforce.

Salesforce Development Vocabulary

In the world of Salesforce development, you’ll hear many technical terms such as Apex, Classes, Variables, Lists, Sets, Maps, Triggers, Visualforce pages, LWC, Aura Components, SOQL, SOSL, Developer console and more. But don’t worry, I’m here to help you understand! Let me give you a brief description of each term so that you can have a better understanding of these concepts.

Apex

  • Apex is the programming language used for Salesforce development.
  • Using Apex, you can create a lot of custom functionality using Salesforce starting from automation, to business logic and integration with external systems.
  • You will need to learn its syntax and don’t worry you will get there and you should take it step by step. Also, I am here to help!

Apex Class

  • Apex classes are the building blocks of Salesforce development.
  • You will be writing a lot of classes during your development journey.
  • I created the following sample class called “StudentDetails”, where I defined multiple properties (variables) such as “studentName”, “studentGrade”, and “termOneMark”.
//StudentDetails is your class
public class StudentDetails {

    //the following are variables
    public String studentName;
    public String studentGrade;
    public String termOneMark;
}

Variables, Lists, Sets and Maps

  • You will use variables, lists, sets, and maps in your code to store single or multiple values.
  • Variables:
    • You can think of variables as containers that hold a value, such as a number or text, and you can access and modify them as needed.
    • Developers define variables by specifying their data type, such as Integer or String. For more details check my blog “Beginner’s Guide to Salesforce Apex: Primitive Data Types and Methods
    • When declaring a variable, you can assign it a value immediately or do so later in the code.
String strDayName='Monday'; //Define and assign a value immediately to a String variable
Decimal weightValue=22.4;  //Define and assign a value immediately to a Decimal variable
Integer ageValue;          //Define an Integer variable without assigning a value to it.
......
ageValue = 20;     //Variable assigned later in the code
weightValue = 56; //Variable value changed later in the code;
//Example Displaying the syntax of Lists, Sets and Maps

// List syntax (Ordered list so each item has an index to get it)
List<String> lstDayNames = new List<String>(); 
lstDayNames.add('Monday');
lstDayNames.add('Tuesday');
lstDayNames.add('Wednesday');
System.debug('Day Names: '+lstDayNames); //print all items of the list
System.debug('Day 1 Name: '+lstDayNames[0]); //print the first item in the list

// Set syntax (Doesn't allow duplicate values)
Set<String> setStudentSerials = new Set<String>();
setStudentSerials.add('Student00001');
setStudentSerials.add('Student00002');
setStudentSerials.add('Student00003');

// Map syntax (Key Value pairs)
Map<String, String> mapStudentDetails = new Map<String, String>();
mapStudentDetails.put('Student00001', 'Grade 1');
mapStudentDetails.put('Student00002', 'Grade 2');
mapStudentDetails.put('Student00003', 'Grade 3');
//get the grade value of the student with serial # Student00001
System.debug('get Student 1 Grade: '+mapStudentDetails.get('Student00001'); 

Apex Trigger

  • Apex triggers are code snippets. They execute when a specific event occurs in Salesforce, such as creating, updating, or deleting a record from a specific Object.
    • They allow you to automate your business processes. With triggers, you can perform a wide range of actions, such as:
      • Updating related records
      • Sending emails,
      • Creating tasks.
      • Performing some complex validation that you need to run before saving a record.
  • Be sure to check out the resources section for more information on triggers.
  • Stay tuned as I’m planning to cover this topic soon! I’ll be sharing some tips and best practices on writing triggers that you won’t want to miss.

Visualforce pages, LWC and Aura Components

  • Developers use Visualforce pages, Lightning Web Components (LWC), and Aura Components as three different technologies to build custom user interfaces in Salesforce.
    • Visualforce pages use a markup language similar to HTML.
    • Aura Components and LWC use Javascript, HTML and CSS.
  • Don’t panic, you don’t need to know all of these concepts from day one. I’m just providing you with a brief description to give you an idea of what each term means.
  • I would recommend starting with LWC as it is the newest technology and most commonly used, based on my experience.

SOQL and SOSL

  • Salesforce uses SOQL (Salesforce Object Query Language) and SOSL (Salesforce Object Search Language) as query languages to retrieve data from the objects
  • Developers use SOQL to query a single object or related objects.
  • SOSL allows you to search across multiple objects in Salesforce.
  • Both languages are powerful tools for data retrieval and manipulation in Salesforce.
  • Start with learning more about SOQL if you want to choose one. Developers use it frequently while developing. And, if you have any questions, don’t hesitate to message me.
//SOQL Example:
/*this query will return all the accounts that have the word test in their Name field. It will return a list of account objects*/
List<Account> lstAccounts = [SELECT Name FROM Account WHERE Name Like '%test%'];


//SOSL Example:
/*This query searches for the keyword 'John' in all fields of the Account and Contact objects and returns the Name field for any matching Account or Contact Records. The results are returned in a nested List object.*/
List<List<SObject>> lstResults = [FIND 'John' IN ALL FIELDS RETURNING Account(Name), Contact(Name)];

Developer Console

  • The Developer Console is a powerful tool in Salesforce that is accessible from your Salesforce organization and you don’t need to install anything on your machine to access it.
  • It allows developers to write, test, and debug code. You can start using this and then look into installing an IDE on your laptop.
    • Visual Studio Code is the go-to code editor for Salesforce developers. It’s free, open-source, and available for Windows, Linux, and macOS. Check resources for more details on how to set it up.
  • Developer Console provides a convenient interface for:
    • Executing SOQL and SOSL queries
    • Viewing logs
    • Executing anonymous Apex code.
  • I love using it for executing anonymous code a lot and to view logs. Let me know when you start using it, what feature are you using the most from it?
Developer Console's debugging Sample
Using Developer Console for Debugging
Developer Console's Executing code anonymously Sample
Using Developer console to run code anonymously
Developer Console's running SOQL Sample
Using Developer console to run SOQL

Next Steps

  1. Want to get your hands on the Salesforce platform? Create your own free developer org and start playing around! Here’s the link to get started.
  2. Ready to dive deeper into Salesforce development? Create a Trailhead account and explore the many trails and modules available to learn at your own pace.
  3. Don’t want to miss out on any of my Salesforce development tips and posts? Follow me on social media to stay up-to-date with my latest blog posts and updates.
  4. Have a question or a topic you’d like me to cover in an upcoming post? Send it my way, and I’ll do my best to answer it!
  5. Looking for more Salesforce development resources? Check out the resources section below.
  6. Remember, don’t be afraid to make mistakes and ask questions. Learning Salesforce development is a journey, and I’m here to help you every step of the way!

Conclusion

In conclusion, I hope this introductory blog post has provided you with a good starting point for your Salesforce learning journey. Understanding the basic Salesforce vocabulary is essential to building your knowledge and skills in Salesforce development. Remember, take it one step at a time, don’t be afraid to make mistakes or ask questions, and have fun coding!

Resources

  1. Introducing Apex
  2. Salesforce Developer Center
  3. Salesforce Trailhead
  4. Overview of Salesforce Objects and Fields
  5. Salesforce Collections [List,Sets,Maps]
  6. Introduction to SOQL and SOSL
  7. Learn more about developer console
  8. Lightning Aura Components Developer Guide
  9. Create an Aura Component
  10. Introducing Lightning Web Components (LWC)
  11. What is Visualforce?
  12. Set Up Visual Studio Code
  13. Lists,Sets and Maps
  14. Get Started with Apex Triggers

2 Comment on this post

  1. A good high level glossary is a valuable resource. I haven’t run across a good one before. Thanks for this content !

    On the terms Visualforce pages, LWC and Aura Components – it would be good to know at a definition level – where they fit (past, current or future) into the SF ecosystem.

    For example visualforce is no longer preferred or recommended for new development correct ?

    1. Thank you so much for your kind words and feedback on my post! I’m thrilled to hear that you found the high-level glossary valuable.

      You made an excellent point about understanding where Visualforce pages, LWC, and Aura components fit into the Salesforce ecosystem. Visualforce was one of the first technologies used to build custom user interfaces in Salesforce, but it is no longer the preferred method for new development. Aura Components were then introduced and were widely adopted by the Salesforce community for building Lightning Experience interfaces. However, since the introduction of LWC components, it has become the recommended technology for building custom UI in Salesforce due to its performance, simplicity, and reusability.

      I appreciate your suggestion to include more detailed information about each technology in future posts. I’ll be sure to cover this topic in more depth to help other readers gain a better understanding of the Salesforce ecosystem.

      Thanks again for your comment and for reading my blog! Let me know if there are any other topics you’d like me to cover. I’m always open to suggestions from my readers.

Join the conversation

Your email address will not be published. Required fields are marked *