Given a scenario, identify the boundaries of declarative customization and the use cases for programmatic customization.
Salesforce provides both declarative and programmatic features for customization. Depending on the use case, different customization tools can be used. However, declarative customization should be preferred whenever possible.
Custom objects and fields
Page layout customizations
Formula fields and roll-up summary fields
Workflows and approval processes
Custom Lightning components
Force.com Canvas apps
It is generally recommended to use declarative features for customizations whenever possible. Before implemeting a new feature with programmatic tools, it should be evaluated wheter the same could be achieved with declaratives features as well.
Comparison of Declarative and Programmatic Customization
Fast, easy, and cheap to implement
Support complex business processes
Use standard features and user interfaces
Provide highly customized user interfaces
Adjusted automatically when Salesforce features are updated
Might require manual changes when Salesforce features are updated