|
Public
Physics
Engineering
Literature Journal Club People
MineralPET DAQ
Computing
Africa
|
< Program Debugging | Programming | Tips and Tricks >
Source Code Text Editors
- ed - is the standard text editor ;-)
- vi - the standard visual editor in Unix. Not easy to use, but very powerful, fast, and available on each and every Unix/Linux.
An Introduction to Display Editing with Vi
- Emacs is the GNU editor.
Emacs can do almost everything an IDE can do, and still is much faster that fullly graphical IDEs.
- XEmacs
XEmacs is a version of Emacs with a better interface (tabs to switch between files, more logic and standard organization of menus, etc)
- available for Scientific Linux, part of default install
- Attach:XEmacs-refcard.pdf Quick reference card
- (tricks for Emacs mostly apply to XEmacs too)
- JED - a lightweight Emacs clone
- Kate - standard editor for KDE
- GEdit - standard editor in Gnome
- see Os X Notes
IDEs - Integrated Development Environments
- LSP: Language Server Protocol - connects editors (Vim, Emacs, VSCode, etc.) to a specific language server (C++, Python, Go, etc) that supplies code completion, referencing, analysis etc.
- Eclipse - Java-based, cross platform, supports C++, Java, Fortran and more
Sponsored primarily by IBM
- KDeveloper - for KDE
- Anjuta - for GNOME
- NetBeans - Java based, supports Java and limited C++. Sponsored by SUN
- XCode - Mac OS X only
- Microsoft Visual Studio - Windows only
- Microsoft VSCode - cross platform (Electron-based) editor
Debugging and Profiling
see Program Debugging
Revision Control Systems
Revision control is the art of managing changes to information. It has long been a critical tool for programmers, who typically spend their time making small changes to software and then undoing those changes the next day. But the usefulness of version control software extends far beyond the bounds of the software development world. Anywhere you can find people using computers to manage information that changes often, there is room for version control. (From Subversion book introduction)
Subversion quick hints
Libraries
- Boost is collection of peer-reviewed C++ (source code) libraries, of very high quality, and is easily available on Linux, as part of the distribution.
- NAG - Numerical Algorithms Group
< Program Debugging | Programming | Tips and Tricks >
|