Text editors and integrated development environments (IDEs) are applications for writing code. These applications are the primary user interface for developers to create their own programs.
A text editor is just for writing/modifying text/code. With an IDE, you should do a lot more within that single program; running, debugging, version control, etc. IDEs contain text editors but many text editors do not include IDE features.
Popular text editors are often lightweight, available cross-platform, and support all major programming languages. They can be upgraded with configurations and plugins to become full-fledged IDEs when a developer wants that kind of functionality.
- VSCode - A streamlined code editor with support for development operations like debugging, task running, and version control. It aims to provide just the tools a developer needs for a quick code-build-debug cycle and leaves more complex workflows to fuller featured IDEs.
- Sublime Text - A sophisticated text editor for code, markup and prose. Sublime Text has a powerful, Python API that allows plugins to augment built-in functionality.
- Atom - A hackable text editor for the 21st century, built on Electron, and based on everything we love about our favorite editors. We designed it to be deeply customizable, but still approachable using the default configuration.
- Vim - A highly configurable text editor built to make creating and changing any kind of text very efficient. It is included as “vi” with most UNIX systems and with Apple OS X. Vim is rock stable and is continuously being developed to become even better.
- Emacs - An extensible, customizable, free/libre text editor. At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming language with extensions to support text editing.