What are the differences between a source editor, text editor and an IDE?

Asked

Viewed 3,647 times

11

What’s the difference between a source editor, a text editor and an IDE?

People claim that Visual Studio Code is a code and not an IDE. I really see that the difference between VS Code and VS is unmatched, it’s like VS is a God in relation to VS Code.

I also see that Sublime Text and Notepad++ is a text.

Then I had doubts:

  • What defines that the "program" is a text, an editor of code or an IDE? (Mainly a text editor and a code editor, to be honest they seem to be the same thing).
  • An IDE is also a text and code editor?
  • Until what points they can be considered what they are?
  • There are other related?

3 answers

11


Text editor is to edit unspecified texts, has nothing to do with programming, although a code can be written in a text editor.

A code editor is specialized, has resources that help in coding, there are aids to better take advantage of programming languages or other types of definition. In addition to the features that allow editing in a more appropriate way for the movements that a code usually has, and not having the typical features of editing texts formatted as a letter or something similar (does not make bold, paragraph, etc.), it usually has colorization to help visualization, tips and auto completion syntax, among other facilities. Generally it can be more configurable to give more ergonomics and usability to the programmer with its style and language. It is common to have a system of plugin. Of course every code editor is a text editor in a general sense.

As far as I know there is no clear line where the code editor starts to be an IDE. I imagine that’s when it does something other than editing the code. Surely every IDE has a text editor. It has also called the compiler, Debugger and analysis tools, project management, a help, probably a screen editor, reports and other visual components, version control, performance analysis, among others. The plugin is usually more comprehensive.

Of course a code editor can edit plain, plain text without formatting. Just like it can edit JSON, XML. I do not consider the two editors cited as text. A Notepad++ can edit plain text or code.

For me Sublime and Notepad++ are essentially code editors. As it does not have a clear and irrefutable formal definition certainly there are those who disagree.

And I consider Visual Studio Code a IDE. It may not be as powerful, but it is much more than a code editor, it allows to take care of the project as a whole.

The Visual Studio is a ALM (Application Lifecycle Management) or (ADLM where development is included) which is a glorified IDE. In addition to the typical development activities he takes care of other points, such as configuration, various tests, implementation, requirements, architecture, maintenance, changes and problems, documentation, quality, governance, collaboration, finally, the project in a broad sense and other activities related to the project that are not the development itself.

An ALM features UML modeling or other similar style, database access, continuous integration, and more. Some Alms do not have an IDE. Again, the line of what is an IDE and an ALM is not well defined.

5

Complementing the excellent response of Maniero:

  • Text editor: Does not specialize in code editing, but can edit code. Example: iPhone Notes and Windows Notepad.
  • Code editor: specialized in code. It can have auto-complete (usually pretty dumb, but does its job), Highlighting code and more. To get better and increase developer productivity, there are plugins that make it more complete.
  • IDE: does everything the code editor does and still takes care of projects, testing, debugging, code navigation more accurately, refactoring and more.

Today there is a tendency to turn code editors into Ides by installing thousands of plugins. The Atom code editor, for example, has several extensions that speak it that turn it into IDE.

For my development environment, I only use a code editor and Terminal. It is Sublime, but with few plugins and some settings that solve my problem. If in doubt what to use, see what’s feasible for your stack and use whatever is productive for you.

In short:

Code Editor Text Editor IDE
Unskilled Specialized Complete and integrated
Ex: Notepad.exe Many plugins Testing and debugging
Ex: Notes from iOS Syntax Highlight Ex: Visual Studio
  • That table at the end didn’t look good, it got all crooked

  • Jeez! I think we are in different resolutions (https://imgur.com/a/jrDLp). Anyway, I did. Thanks @Jeffersonquesado :D

  • Wow, enough! I’m using the stack exchange app for iPhone, it must have been his way of interpreting that broke everything. But that image was really cute, I think you can get it for her

  • Ready! @Jeffersonquesado

0

IDE is life.

Essentially, the IDE, unlike a common text editor (Sublime or Notepad++), works within the scope of a "Project", rather than individual files. You open a "project" on it, and it scans all the files in that project, and you have various features that help you move the code, like:

  • See all places where a function or method is being used
  • When using a function or method, you can jump to where it is being set
  • Tells you the list of mandatory and optional parameters when using a function or method
  • Let you know if you passed a parameter with the unexpected type (eg: Vc passed a string, and the function expected an array)
  • You can rename or move files and functions in bulk throughout the project
  • In general, the IDE has a "PHP engine" that can understand PHP code, while a text editor only sees "text", not "PHP code". Both use colors to make code more human-readable, but the IDE knows if the syntax is correct or not.
  • Anyway, there are several things

It’s big, complicated, difficult, but if you insist persistently on using, in a month or two you won’t want anything else. I used Sublime before, and migrating to Phpstorm for me was a difficult process, but today I no longer feel any need of the Sublime

If you edit many files via FTP for example, the IDE is not as useful as it is most useful for projects developed on the local machine.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.