Clicks vs Code in Salesforce

When to select Clicks vs Code

There are two types of programming typically used: imperative programming (or code) and declarative programming (usually referred to as either clicks or config).

Imperative programming, also known as traditional or code-oriented programming, denotes the means of programming by using certain coding languages (such as C#, C++, Java or .Net) to give a computer exact instructions how to perform an action. This requires a skilled developer with programming knowledge. A developer builds the application brick by brick using blocks of code in a highly specialized development environment.

Declarative programming accomplishes the same results by telling the computer the end result and letting the computer figure out how to get there. They are usually drag-and-drop solutions that allow someone without coding knowledge to build an application. The blocks of code are prewritten, less specific and packaged into components that are selected as needed.

Business leaders and entrepreneurs see the advantages to early feedback, quick results with less effort by using those declarative programming drag-and-drop solutions.

declarative language

 

Declarative programming benefits

76% of IT leaders said that speed of application or project delivery is a critically or very important KPI. 67% of IT leaders said that improving the speed of development cycles is a critical or high priority.
However only 45% of IT leaders can design/prototype an app in under a month and just 47% can deploy an app in under a month.
A declarative programming platform enables projects to be developed quicker than coding.
The Salesforce Lightning Platform provides the tools of a developer, without requiring an advanced skill set to:
  • Personalize and build apps with a multitude of configurable and reusable components;
  • transform complex processes into apps with Process Builder and Lightning Flow, including point-and-click workflow and process tools;
  • Use the Lightning Design System to create complex apps with design patterns, components, and the best user experience; and
  • Build apps faster and quickly scale development with Lightning Components.

Declarative is not a silver bullet

There many requirements that are specific and need to be built. There are plenty of coding platforms to assist on platform development (https://www.salesforce.com/products/platform/overview/) or off platform (https://www.heroku.com/home) using various, industry standard languages such as NodeJS. Coding also requires a level of release maturity suited for larger teams and complex environments.

The developer resources are available at https://developer.salesforce.com/

Which one to choose? 

The selection of code vs config comes back to your unique requirements. Clients often meet their requirements declaratively because they are smaller orgs or less complex business rules. A Salesforce partner, like Two21, will guide you to the correct solution for your environment.

 

References

Click, Not Code: The Benefits of Declarative Programming vs. Imperative Programming. https://www.salesforce.com/products/platform/best-practices/declarative-programming-vs-imperative-programming/