Salesforce DX means Salesforce Developer Experience (DX) which includes a series of new tools and features that allows users to develop and manage Salesforce apps throughout the entire platform in a more direct and efficient way. It provides new way to manage and develop apps on the force.com platform across their entire life cycle, and makes it simpler for developers to build and deliver apps, which improves their overall productivity.
Some of the features of Salesforce DX are discussed below.
Modern Developer Experience
It provides an integrated end-to-end lifecycle designed for high-performance agile development which will change the way you build Salesforce Applications whether you are an individual developer or working in a team.
It provides the features to make modern collaboration technologies like Git that control your code, your org configuration, and your metadata. It makes possible to export more out of your metadata and enable you to define data import files. With the help of it you can easily specify the edition, features, and configure your development and production environment.
Quick Testing and Development
It introduced a new type of environment called Scratch org which is source-driven, and disposable deployments of Salesforce code that can be used to drive development, testing, and continuous integration. You can quickly test your code, and after validating the required changes you can use integration tools to immediately promote your code.
Open and Standard Developer Experience
It provides amazing out of box developer experience which enables you to use your own choice of tools to meet the needs of your team. It provides flexibility to integrate the tools of your choice whether you prefer to code in a text editor or prefer the modern convenience of an integrated development environment.
It comes out with new ideas to organize your metadata as well as innovative ways to distribute your apps. Its new 2nd generation packaging (Packaging 2) facilitates customers and partners who can adopt a source-driven, CLI (command line interface) centric approach to automate and manage the end-to-end lifecycle and delivers apps in a modern and efficient manner.