Skip to content
This repository has been archived by the owner on Feb 18, 2024. It is now read-only.

Latest commit

 

History

History
18 lines (11 loc) · 1.63 KB

modularizing-your-code-config.md

File metadata and controls

18 lines (11 loc) · 1.63 KB

Organizing your code / config

A DX@Scale project is all about ensuring your salesforce org is well modularized in terms of functionality, as well as the deployment of the modules utilizes various forms of package-based development options available within Salesforce

Traversing the concept of DX Packaging can be a daunting task. In our exuberance of adoption, we cannot lose sight of purpose and value. Packaging for sake of packaging is a path toward disaster; just a road trip to nowhere. You wind up with a lot of cost and lost time.

Pillars of a Package

There exist three pillars of a Package which include Encapsulation, High Cohesion and Reusability. These pillars define a package as an entity not reliant on the environment/Org it exists in; except for standard Salesforce components

Encapsulation Defines the bundling of data with the methods that operate on said data. Encapsulation is used to hide the values or state of a structured data object inside a package
High Cohesion Defines how closely all the components in a package support a common purpose
Reusable The package can be reused without consequences of the environment; morphing to each environment. Please note, if a package has a dependency, then one need to adhere to the guiding principles.