Skip to main content

Salesforce Naming Conventions Best Practices

 Everyone want their code to be well structured but sometime due to few things we focus on functionality but forget to maintain format. A well formatted code increases readability, understanding and ultimately maintainability of the code base.

Post Fix / Suffix:

Here is some example of Postfix and Suffix we are using in our project.

Functional Type

Name Suffix

Examples

Trigger

Trigger

AccountTrigger

Trigger Handler

TriggerHandler

AccountTriggerHandler

Trigge Action

TriggerAction

AccountTriggerAction

VF Controller

Controller

AccountController

VF Controller Extension

Ext

AccountExt

Service Class

Service

AccountService

Model / Wrapper Class

Wrapper

AccountWrapper

Web Service (SOAP)

Ws

AccountToolsWs

Web Service (REST)

Rest

AccountCreateRest

Email Service

EmlSvc

AccountCreateEmlSvc

Asynchronous (Future)

Async

AccountCreateAsync

Asynchronous (Batch)

Batch

AccountBatchUpdate

Scheduled Apex

Job

AccountCleanupJob

Test Class

Test

AccountCreateTest

Queueable Apex

Que

UserSyncingQue

Visualforce Page

-none-

UserClone

Visualforce Component

Cmp

AccountCloneCmp

Lightning Components

APEX NAMING CONVENTION :

Class Name : ClassNamePostFix

Class names should be unique, with first letter of each interval word capitalized.


Variable Name : List<Account> accountList;

Variables should be in mixed case with a lowercase first letter. Internal words start with capital letters. Variable names should be short and meaningful. Its should be camelCase.


Method Name : showAccountDetail();

Methods should be verbs, in mixed case with the first letter lowercase, with the first letter of each internal word capitalized. Whole words should be  used and use of acronyms and abbreviations should be limited. Name should be camelCase


Constants : private static final String ACCOUNT_LIMIT ='10';

The names of variables declared class constants should be all uppercase with words separated by underscores (“_”). All uppercase letters in given format : CONSTANT_NAME.


Trigger : AccountTrigger

<ObjectName>Trigger. This should follow Salesforce Trigger Patterns - One trigger per object


Lightning Web Components Naming Convention

Html File : helloWorld.html

Use camel case to name your component and use kebab-case to reference a component in the markup.


JavaScript File : export default class HelloWorld extends LightningElement{}

Java Script Class name should be in PascalCase.


CSS File : showAccountDetail();

Methods should be verbs, in mixed case with the first letter lowercase, with the first letter of each internal word capitalized. Whole words should be  used and use of acronyms and abbreviations should be limited. Name should be camelCase like  


CSS Class Naming Standards

  • CSS classes should be named based on the component that is being addressed
  • Any name that is longer than one word, needs to be in this format : class-name
  • Multi word name should be separated by a " - "


Comments

Popular posts from this blog

Platform Developer I Certification Maintenance (Winter '23)

 Maintain Your Platform Developer I Certification for Winter ’23 1. Field update actions have changed in API Version 54.0. Which record-triggered flows do field update actions now execute? Answer: Before-Save after After-Save 2. Which Apex class is used to determine the hostnames for the domains that Salesforce hosts for your org? Answer: System.DomainCreator 3. Which modules can be used for notifications in a Lightning web component instead of native APIs? Answer: LightningAlert, LightningConfirm, and LightningPrompt 4. What determines an org’s “shape” in Salesforce? Answer: Features, settings, edition, limits, and licenses 5. Which lightning-modal-* component is required to create a modal? Answer: Body 6. How do you call an invocable action from Apex code? Answer: Reference Invocable.Action Get Hands-On With Apex Assertions 1. Create Two Apex class: Copy and Paste below codes (A.) TestFactory @isTest public class TestFactory {    public static Account getAccount(String accountName, B

Custom Table In LWC

I'm assuming you've Basic understanding of Lightning Web Component, I'll be explaining you the syntax that will be generic. HTML: < template > <!-- Header Part -->      < lightning-card   title = "Custom Data table in Lightning Web Components" >          < div   class = "slds-grid slds-gutters" >              < div   class = "slds-col" >                  < span ></ span >              </ div >              < div   class = "slds-col" >                  < span > <!--A Button For extra feature-->                      < lightning-button   label = "Show Selected Contacts"   onclick = {showContacts}   style = "margin-left: 40%"   variant = "brand" > </ lightning-button >                  </ span >              </ div >          </ div >< br />

LWC js-meta.xml Configuration File Tags

Each Lightning web component folder must include a configuration file named <componentName>.js-meta.xml. The configuration file defines the metadata values for the component, including the design configuration for the Lightning App Builder and Community Builder. Some Standard Key metadata values: apiVersion : A double value that binds the component to a Salesforce API version. isExposed : If isExposed is false, the component is not exposed to Lightning App Builder or Community Builder. To allow the component to be used in Lightning App Builder or Community Builder, set isExposed to true and define at least one <target>, which is a type of Lightning page. Some Standard Optional metadata values: description : A short description of the component, usually a single sentence. masterLabel : The title of the component. Appears in list views, like the list of Lightning Components in Setup, and in the Lightning App Builder and in Community Builder. targets : Specifies wher

Translate