RidgeRun Developer Manual/Editors: Difference between revisions
No edit summary |
No edit summary |
||
Line 11: | Line 11: | ||
Generally speaking, we recommend that every developer is fluent with, at least, two environments: | Generally speaking, we recommend that every developer is fluent with, at least, two environments: | ||
* Console based Code Editor | * Console based Code Editor | ||
* Integrated Development | * Integrated Development Environment | ||
Figure 1 shows an example of the two aforementioned environments. | Figure 1 shows an example of the two aforementioned environments. | ||
Line 20: | Line 20: | ||
=== Console Based Editor === | === Console Based Editor === | ||
A lightweight editor that opens within the terminal emulator. You'd typically use this for quick edits, or momentary remote editing. If a project will require you to remote edit as you primary (or very constantly) consider setting up a remote IDE instead. | A lightweight editor that opens within the terminal emulator. You'd typically use this for quick edits, or momentary remote editing. If a project will require you to remote edit as you primary (or very constantly) consider setting up a remote IDE instead. | ||
Popular console editors include: | Popular console editors include: | ||
* [https://www.gnu.org/s/emacs/ | * [https://www.gnu.org/s/emacs/ Emacs] | ||
* [https://www.vim.org | * [https://www.vim.org VIM] | ||
* [http://ex-vi.sourceforge.net | * [http://ex-vi.sourceforge.net VI] | ||
* [https://www.nano-editor.org | * [https://www.nano-editor.org Nano] | ||
This is not your primary editor, however you should be fluent in it. Make sure you at least know your way around with: | This is not your primary editor, however you should be fluent in it. Make sure you at least know your way around with: | ||
Line 33: | Line 34: | ||
* Copy, cut and paste (without explicit use of the mouse) | * Copy, cut and paste (without explicit use of the mouse) | ||
* Several files in a single session (no need to close and re-open the editor) | * Several files in a single session (no need to close and re-open the editor) | ||
=== Integrated Development Environment === | |||
The IDE is intended to be your primary development environment. It is expected that you invest time setting it appropriately, rarely an IDE is meant to be used out-of-the box. An environment properly configured speaks positively about the profesional maturity of the developer. | |||
A list of popular IDEs (as per today) include: | |||
* [https://www.gnu.org/s/emacs/ Emacs] and its variants | |||
* [https://www.vim.org VIM] and its variants | |||
* [https://code.visualstudio.com Visual Studio Code] | |||
* [https://atom.io Atom] | |||
* [https://www.sublimetext.com Sublime] | |||
* [https://developer.apple.com/xcode/ Xcode] | |||
* [https://www.qt.io/development-tools Qt Creator] | |||
* [https://www.eclipse.org/ide/ Eclipse] | |||
==IDE Features== | ==IDE Features== |
Revision as of 20:38, 20 April 2020
WORK IN PROGRESS. Please Contact RidgeRun OR email to support@ridgerun.com if you have any questions. |
RidgeRun Developer Manual |
---|
Coding Styles |
Development Tools |
Editors |
Debugging Tools |
|
Profiling Tools |
Methodologies |
Design Patterns |
RidgeRun Developer Manual/Testing |
RidgeRun Developer Manual/Build Systems |
Contact Us |
Developer's IDE
The Integrated Development Environment (IDE) is probably the most fundamental tool of a developer. Similar to how a chef invests in a good set of knives or how a surgeon requires precision scalpels, the IDE can make a huge difference in the quality and efficiency of a programmer. Setting up these environments rarely is considered a waste, but an investment. A professional developer understands the importance of working with the right tools.
An IDE is set of tools integrated to make the development process more efficient. These are typically plug-ins, meaning that they may be independently installed, configured or removed by the user. The later allows the developer to customize it's environment according to his/her preferences (programmers are known to be proudly picky :)) Among these, the Code Editor (CE) is the core of the environment. Around it, several plug-ins add extra functionality such as integrations with version control system, debuggers, tests, static code analysis, etc...
Generally speaking, we recommend that every developer is fluent with, at least, two environments:
- Console based Code Editor
- Integrated Development Environment
Figure 1 shows an example of the two aforementioned environments.
Console Based Editor
A lightweight editor that opens within the terminal emulator. You'd typically use this for quick edits, or momentary remote editing. If a project will require you to remote edit as you primary (or very constantly) consider setting up a remote IDE instead.
Popular console editors include:
This is not your primary editor, however you should be fluent in it. Make sure you at least know your way around with:
- Search and replace
- Jump to line number
- Copy, cut and paste (without explicit use of the mouse)
- Several files in a single session (no need to close and re-open the editor)
Integrated Development Environment
The IDE is intended to be your primary development environment. It is expected that you invest time setting it appropriately, rarely an IDE is meant to be used out-of-the box. An environment properly configured speaks positively about the profesional maturity of the developer.
A list of popular IDEs (as per today) include:
- Emacs and its variants
- VIM and its variants
- Visual Studio Code
- Atom
- Sublime
- Xcode
- Qt Creator
- Eclipse
IDE Features
Essential Features
- Static Code Analysis
- Code Autocompletion
- Code Navigation
Desired Features
- VCS Integration
- Debugger Integration
- Remote Editing (via SSH)
- Auto-Indenter