Congratulations! We have covered four major concepts that every programming language owns and going to conquer the 5th concept which is TOOLS.
Tools are the very important part of a good programming experience. While we learn about common concepts such as like syntax, control structures, data structures and variables, we need a platform to program; we need a place to test our program. Thus, if we are trying to program or code, we must have tools to do so.
What are tools?
Tools are everywhere. Actually, we are surrounded with hundreds of thousands of tools in our life. For anything we do, a tool is required. So, no need to define a tool as it is an understood concept for everyone.
Tools in Programming
I believe, we should be equipped with best tools to get the most out of our programming experience. We need different types of tools to code, test and debug, and these tools also differs in-respect to different programming languages and platforms.
For some of the languages, just a text-editor is enough, for some, we must have IDE and some other tools – So, I’m trying to name some tools in Text-Editors, IDEs and Extensions categories that are the neediest ones.
Let’s start with text editors, if you’re working with Languages like JavaScript, PHP or Python, a text-editor plus some extensions can help you code well. Some famous text-editors are:
Text-Editors
Thousands of extensions are available for these text-editors to extend their functionalities. For example, if you wish to format your code in VSCode, you’ll find many extensions to install.

I might write an article on Extensions for Web Developers soon, stay tuned!
Now if you’re dealing with some huge programming languages, like Java, C#, Kotlin, Swift, Objective C, Perl, Python, R or if you’re coding for mobile or desktop platforms, it is better to use an IDE. Some well-known IDEs are:
IDE Tools:

As text-editors have thousands of extensions, IDEs also have thousands of plugins/extensions to extend their functionalities. IDEs are equipped with compiler and interpreter to convert your code to platform-understandable code.
So, concluding this article here, it may have future updates. Should you have any suggestions or questions, feel free to share in comments.