When you need a feature, action, or anything changed in your Salesforce that isn’t covered by automation or setup, you turn to custom development. There are many consulting companies that offer custom developing services, and they have many methods of developing unique and customized features. Here is a list of one of the many development tools Salesforce provides:
Among these, I have chosen a few that I find helpful, along with other software that integrates with Salesforce:
- Microsoft Visual Studios Code
- Aside from using the Developer Console that Salesforce provides us, there are many tools that help us write code. One of the biggest and probably most used software for writing code is Microsoft Visual Studios Code. Through Visual Studio Code, you can deploy your code to the organization that you want. Before being able to connect to the organization or anything else Salesforce related. You must first download extensions for Visual Studio Code. With these extensions you can deploy, retrieve, delete, and a lot of other features that work with Salesforce. The reason why Visual Studio Code is a favorite is because while you are writing the code, the variables, classes, etc. are color coded. This makes it easier to read. A nice extension to have is a live share coding session that you can install for VS Code. With this, you and multiple developers can work on a project together, without being next to each other. This is a good teaching tool as well, if you are shadowing a senior, or someone else is showing you different ways of creating your code. Another great feature that VS Code has is auto formatting. When you auto format your code, it automatically indents and adds spaces to your code, so it looks clean and easy to read. You are also able to test your code in VS Code. Another reason why it’s great to use VS Code is that it can connect to Git. So while you are writing your code in production or sandbox and want to save your code for backup, you can save it in Git. And you can connect your Git with your VS Code. From there, you can then commit, add, and push your code to your branches, or main and save it.
- Developer Console
- Salesforce comes with a Developer Console where you can write code, test, debug, execute anonymously, create classes, Visualforce pages, etc. You can also query in a Developer console so it could help you get the right SOQL statements inside your code. If you want to code fast and then test it after, then all you would need is a Developer Console. One of the best features of the Developer Console is the debugging feature. With debugging, you are able to View Logs. These logs would tell you the source of the events, what triggered a certain operation, and what occurred after. When writing code, you usually want to add a couple debug lines to see that your code is working and grabbing the right data. You can view all your debug lines and you can also see which lines they are from. If an error happens in your code, the log will show where the error occurred, which classes are affected, and the source of the problem. You can also set and view Checkpoints in your Apex Code. This would help identify the source of the error. When adding Checkpoints, you don’t need to add debug statements inside your code. The Developer Console will take care of that for you, and it will display certain values that would help you improve and fix your code. Executing anonymously is good in terms of testing an individual class or method. If you want to test a block of your code before making test classes, just to make sure it works, you could do that through this feature.
- Visual Code
- Some Developers use Visual Code as mentioned above, and then they use Developer Console, not to write the codes, but to test the code, check the queries, and to see code coverage. Code Coverage is important because in order to deploy changes from one organization to another, for example, sandbox to production, you would need at least 75% code coverage. So usually what you do is write code in VS Code, deploy it to the org, go to the Developer console, and run the test classes that you made for your feature. Once the code runs, it shows you all the classes, how much percentage your test classes covered with your other classes. Once you see the percentage you can double click on it to see which lines of code are covered. This makes it so much easier to find out which lines of code you need to focus on so you could have the coverage you need to deploy your changesets to your other organizations. The Dynamic Duo of Salesforce Development,in my opinion, would be these two together. VS Code making it easier for you to connect to the organizations, code, and back up code through the GIT terminal, and Developer Console to Test your code, query, execute specified code, and debug.
- Another great tool for Salesforce is called dataloader.io. Through Data Loader, you can export and import data through csv. When you want a backup of your objects’ data, whether you want to keep it in your local computer or a drive, you can use Data Loader to export the data from your objects. If you want to mass update or mass create data, you can use import. Data loader does everything for you if you have the csv file set up. After importing data, Data Loader automatically tells you which files were successfully updated, and which ones had errors. They will then give you a csv of the files with errors and a csv with success. You can fix the errors and re-import them again. With this tool, you must log in to the organization you first want to import and export to, and then you choose which option you want, and the procedure is concise and easy to use.
You’ll have peace of mind when using these tools for your development needs, as they are efficient and easy to use and understand. You’ll have some initial setup to do, but overall, you will save a lot of time and effort in doing projects or any development work. VS Code, for its thousands of extensions that would help you code, Developer Console, for its ease of debugging and testing code/coverage, and Data Loader for backing up Object data and mass updating/creating data. With these tools, we offer you more flexibility.
Here are other custom development options that we offer at SMBHD:
– Scott Bermejo, Salesforce Developer