Development Tools
Version Control
By far the most essential tool you must learn to use is a version control system (VCS). This is also known as "repository". The most popular VCS is called "Git" and is made by Linux Torvalds. Is difficult to learn Git commands. Therefore we suggest you use a Git tool that can improve your productivity.
Git client GUI
To save your code you can use Git application. Professional developers use command line interface (CLI), but some use graphical user interface (GUI) applications. We have found these two for Windows and Mac but there are other.
Project hosting
These days you can store your project on-line without any cost, except if you host a private project. Then you may have some limitations. Following services offer free hosting and affordable commercial plans. We are not affiliated to any of them.
Text Editors
To edit scripts and data files you can use a text editor. Professional developers use plain text editor for extra large projects where the code base is created with multiple programming languages. Also text editors are better for doing code reviews and quick fixes. My favorite text editor is Notepad++. I like how you can create syntax highlighters for new languages.
Text Editors
On-line IDE
You can edit software on-line on specific websites. This method enable you to create demo projects or inspect code snippets and projects created by other developers.
On-line IDE
Programming IDE
To edit & debug source code for complex projects you can use an IDE. There are specific IDE for individual languages. For example PyCharm, Webstorm, Eclipse are specific, however modern IDE editors can support multiple languages. These editors have a longer time until they open so you use them for heavy development and not for quick fixes.
IDE features
An IDE has features that are helping you to be more productive if you work on large projects. The simple text editor do not provide these features and therefore beginners are more happy using IDE while advanced developers are more happy using a simple text editor.
Some of the IDE features are:
- Project resource management;
- Just in time compiler;
- Integrated debugger;
- Syntax color;
- Code completion;
- Refectory tools;
- Static code analyses;
- Version control plugin;
- Todo & bug track plugin;
- Deploy/package system;
- Other extension plugins;
Community IDE
- https://code.visualstudio.com/
- https://www.jetbrains.com/opensource/idea/
- https://www.eclipse.org/ide/
Design Tools
Next topic: Data Structures