Development Standards - revaturelabs/Examforce GitHub Wiki
General
Use declarative tools whenever possible (use a flow or formula field instead of Apex)
Give preference to LDS and the Wire Service over imperative solutions
Avoid record types, use pick list instead (Whenever possible)
Casing
Pascal Case : Class Names e.g. MyClass
Camel Case : Variable and Method Names e.g. myMethod()
Kebab Case : When calling components in LWC.
Snake Case : For controller and helper classes e.g. TriggerHelper_Account, also for custom fields and objects
Naming Conventions
TriggerHelper_{Trigger Name} : For Trigger helpers
LWC_{Component Name} : For LWC controllers
AuraController_{Component Name} : For Aura Component controllers
VisualforceController_{Page Name} : For Visualforce pages
Test_{Object Name} : Test Classes
Self Documenting Code
Variables should be descriptive whole nouns or adjectives
Methods and functions should be descriptive whole verb/s
Avoid using abbreviations. E.g. Use questionAnswer rather than qa
Style Guide
LWC
Standard components should be wrapped in a container (div, span, etc) and the wrapper container should have the styling applied to it. Avoid styling standard components whenever possible.
Use standard components whenever possible.
Give preference to CSS modules over individual component style sheets