Information about Programming Software
A programming tool or software tool is a program or application that software developers use to create, debug, or maintain other programs and applications. The term usually refers to relatively simple programs that can be combined together to accomplish a task, much as one might use multiple hand tools to fix a physical object.
Tools were originally simple and light weight. As some tools have been maintained, they have been integrated into more powerful integrated development environments (IDEs). These environments consolidate functionality into one place, sometimes increasing simplicity and productivity, other times sacrificing flexibility and extensibility. The workflow of IDEs is routinely contrasted with alternative approaches, such as the use of Unix shell tools with text editors like Vim and Emacs.
The distinction between tools and applications is murky. For example, developers use simple databases (such as a file containing a list of important values) all the time as tools. However a full-blown database is usually thought of as an application in its own right.
For many years, computer-assisted software engineering (CASE) tools were sought after. Successful tools have proven elusive. In one sense, CASE tools emphasized design and architecture support, such as for UML. But the most successful of these tools are IDEs.
The ability to use a variety of tools productively is one hallmark of a skilled software engineer.
Memory leak detection: In the C programming language for instance, memory leaks are not as easily detected - software tools called memory debuggers are often used to find memory leaks enabling the programmer to find these problems much more efficiently than inspection alone.
IDEs are often used for development of enterprise-level applications.
Some examples of IDEs are:
The Revision Control System (RCS) is a software implementation of revision control that automates the storing, retrieval, logging, identification, and merging of revisions.
..... Click the link for more information.
History
The history of software tools began with the first computers in the early 1950s that used linkers, loaders, and control programs. Tools became famous with Unix in the early 1970s with tools like grep, awk and make that were meant to be combined flexibly with pipes. The term "software tools" came from the book of the same name by Brian Kernighan and P. J. Plauger.Tools were originally simple and light weight. As some tools have been maintained, they have been integrated into more powerful integrated development environments (IDEs). These environments consolidate functionality into one place, sometimes increasing simplicity and productivity, other times sacrificing flexibility and extensibility. The workflow of IDEs is routinely contrasted with alternative approaches, such as the use of Unix shell tools with text editors like Vim and Emacs.
The distinction between tools and applications is murky. For example, developers use simple databases (such as a file containing a list of important values) all the time as tools. However a full-blown database is usually thought of as an application in its own right.
For many years, computer-assisted software engineering (CASE) tools were sought after. Successful tools have proven elusive. In one sense, CASE tools emphasized design and architecture support, such as for UML. But the most successful of these tools are IDEs.
The ability to use a variety of tools productively is one hallmark of a skilled software engineer.
List of tools
Software tools come in many forms:- Revision control: Bazaar, Bitkeeper, Bonsai, ClearCase, CVS, Git, GNU arch, Mercurial, Monotone, PVCS, RCS, SCM, SCCS, SourceSafe, SVN, LibreSource Synchronizer
- Interface generators: Swig
- Build Tools: Make, automake, Apache Ant, SCons, Rake, Flowtracer
- Compilation and linking tools: GNU toolchain, gcc, Microsoft Visual Studio, CodeWarrior, Xcode, ICC
- Static code analysis: lint, Splint
- Search: grep, find
- Text editors: emacs, vi
- Scripting languages: Awk, Perl, Python, REXX, Ruby, Shell, Tcl
- Parser generators: Lex, Yacc,
- Bug Databases: gnats, Bugzilla, Trac, Atlassian Jira, LibreSource
- Debuggers: gdb, GNU Binutils, valgrind
- Memory Leaks/Corruptions Detection: dmalloc, Electric Fence, duma, Insure++
- Memory use: Aard
- Code coverage: GCT, CCover
- Source-Code Clones/Duplications Finding: CCFinderX
- Refactoring Browser
- Code Sharing Sites: Freshmeat, Krugle, Sourceforge, ByteMyCode, UCodit
- Source code generation tools
- Documentation generators: Doxygen, help2man, POD, Javadoc, Pydoc/Epydoc
Memory leak detection: In the C programming language for instance, memory leaks are not as easily detected - software tools called memory debuggers are often used to find memory leaks enabling the programmer to find these problems much more efficiently than inspection alone.
IDEs
Integrated development environments (IDEs) combine the features of many tools into one complete package. They are usually simpler and make it easier to do simple tasks, such as searching for content only in files in a particular project.IDEs are often used for development of enterprise-level applications.
Some examples of IDEs are:
See also
- Computer-aided software engineering tools
- Software development kit
- Configuration System
- Toolkits for User Innovation
- Software engineering and list of software engineering topics
- Software systems
- Computer science
- Scripting language
A computer program is one or more instructions that are intended for execution by a computer. Specifically, it is a symbol or combination of symbols forming an algorithm that may or may not terminate, and that algorithm is written in a programming language.
..... Click the link for more information.
..... Click the link for more information.
Application software is a subclass of computer software that employs the capabilities of a computer directly and thoroughly to a task that the user wishes to perform. This should be contrasted with system software which is involved in integrating a computer's various capabilities,
..... Click the link for more information.
..... Click the link for more information.
A software developer is a person who is concerned with one or more facets of the software development process, a somewhat broader scope of computer programming or a specialty of project managing.
..... Click the link for more information.
..... Click the link for more information.
tool or device is a piece of equipment which typically provides a mechanical advantage in accomplishing a physical task, or provides an ability that is not naturally available to the user of a tool. The most basic tools are simple machines.
..... Click the link for more information.
..... Click the link for more information.
grep is a command line utility that was originally written for use with the Unix operating system. Given a list of files or standard input to read, grep searches for lines of text that match one or many regular expressions, and outputs only the matching lines.
..... Click the link for more information.
..... Click the link for more information.
AWK
Paradigm: scripting language, procedural, event-driven
Appeared in: 1977, last revised 1985, current POSIX edition is IEEE Std 1003.1-2004
Designed by: Alfred Aho, Peter Weinberger, and Brian Kernighan
..... Click the link for more information.
Paradigm: scripting language, procedural, event-driven
Appeared in: 1977, last revised 1985, current POSIX edition is IEEE Std 1003.1-2004
Designed by: Alfred Aho, Peter Weinberger, and Brian Kernighan
..... Click the link for more information.
In software development, make is a utility for automatically building large applications. Files specifying instructions for make are called Makefiles. make
..... Click the link for more information.
..... Click the link for more information.
pipeline is the original software pipeline: a set of processes chained by their standard streams, so that the output of each process (stdout) feeds directly as input (stdin) of the next one. Each connection is implemented by an anonymous pipe.
..... Click the link for more information.
..... Click the link for more information.
Brian Wilson Kernighan (IPA pronunciation: ['kɛrnɪˌhæn], the 'g' is silent), (born 1942 in Toronto, Ontario, Canada) is a computer scientist who worked at Bell Labs alongside Unix creators Ken Thompson and Dennis
..... Click the link for more information.
..... Click the link for more information.
P. J. Plauger is an author and entrepreneur. He has written and co-written articles and books about programming style, software tools, and the C programming language.
He founded Whitesmiths, the first company to sell a C compiler and Unix-like operating system (Idris).
..... Click the link for more information.
He founded Whitesmiths, the first company to sell a C compiler and Unix-like operating system (Idris).
..... Click the link for more information.
integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of a source code editor, a compiler and/or interpreter, build automation tools, and (usually)
..... Click the link for more information.
..... Click the link for more information.
OS: Cross-platform
Use: Text editor
License: Free software, charityware
Website: [1]
Vim is a text editor first released by Bram Moolenaar in 1991.
..... Click the link for more information.
Use: Text editor
License: Free software, charityware
Website: [1]
Vim is a text editor first released by Bram Moolenaar in 1991.
..... Click the link for more information.
Maintainer: GNU Project
OS: Cross-platform
Available language(s): English only
Use: Text editor
License: GNU General Public License
Website: www.gnu.
..... Click the link for more information.
OS: Cross-platform
Available language(s): English only
Use: Text editor
License: GNU General Public License
Website: www.gnu.
..... Click the link for more information.
CASE may stand for:
..... Click the link for more information.
- Computer-aided software engineering
- Community for Alternative Sources of Energy
- Centre for Apologetic Scholarship and Education at New College, UNSW
- Centre for Astronomy & Science Education at The University of Glamorgan
..... Click the link for more information.
Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software.[1] The term software engineering
..... Click the link for more information.
..... Click the link for more information.
Revision control (also known as version control (system) (VCS), source control or (source) code management (SCM)) is the management of multiple revisions of the same unit of information.
..... Click the link for more information.
..... Click the link for more information.
Bazaar (formerly Bazaar-NG) is a distributed revision control system sponsored by Canonical Ltd., designed to make it easier for anyone to contribute to open source software projects. As of 2007, the best known users of Bazaar is the Ubuntu project.
..... Click the link for more information.
..... Click the link for more information.
BitKeeper is a software tool for revision control (configuration management, SCM, etc.) of computer source code. A sophisticated distributed system, BitKeeper competes largely against other professional systems such as Rational ClearCase and Perforce.
..... Click the link for more information.
..... Click the link for more information.
The Bonsai CVS code management system is a computer program designed to help large programming projects productively manage CVS code archives. It was initially developed to fill the Mozilla project's need for good tools to allow multiple developers to edit its extremely large
..... Click the link for more information.
..... Click the link for more information.
Rational ClearCase is a software tool for revision control (configuration management, SCM etc) of source code and other software development assets. It is developed by the Rational Software division of IBM.
..... Click the link for more information.
..... Click the link for more information.
Concurrent Versions System (CVS), also known as the Concurrent Versioning System, is an open-source version control system that keeps track of all work and all changes in a set of files, typically the implementation of a software project, and allows several
..... Click the link for more information.
..... Click the link for more information.
Git is a distributed revision control / software configuration management project created by Linus Torvalds. It should not be confused with GIT (GNU Interactive Tools) , a Norton Commander-like file manager created by Tudor Hulubei and Andrei Pitis.
..... Click the link for more information.
..... Click the link for more information.
GNU arch is a distributed revision control system that is part of the GNU Project and licensed under the GNU General Public License. It is used to keep track of the changes made to a source tree and to help programmers combine and otherwise manipulate changes made by multiple
..... Click the link for more information.
..... Click the link for more information.
Mercurial may refer to:
..... Click the link for more information.
- Mercurial (software), a cross-platform distributed source management tool
- Mercurial Communications, the Canadian company that developed the Netscape 8.0 web browser
See also
..... Click the link for more information.
Maintainer: Nathaniel Smith, Graydon Hoare
OS: Unix, Linux, BSD, Mac OS X, Windows
Use: revision control
License: GPL
Website: Monotone home Monotone is an open source software tool for revision control.
..... Click the link for more information.
OS: Unix, Linux, BSD, Mac OS X, Windows
Use: revision control
License: GPL
Website: Monotone home Monotone is an open source software tool for revision control.
..... Click the link for more information.
PVCS, or Polytron Version Control System, is a software package for revision control of files, in particular source code files.
PVCS follows the "locking" approach to concurrency control; it has no merge
..... Click the link for more information.
PVCS follows the "locking" approach to concurrency control; it has no merge
..... Click the link for more information.
For revision control systems in general, see .
The Revision Control System (RCS) is a software implementation of revision control that automates the storing, retrieval, logging, identification, and merging of revisions.
..... Click the link for more information.
SCM may refer to:
..... Click the link for more information.
- SCM Corporation, an American typewriter and calculator manufacturer
- SCM Holdings, a holding company owned by Ukrainian tycoon Rinat Akhmetov
- SCM (Scheme implementation), a free software Scheme implementation
..... Click the link for more information.
SCCS may refer to any of the following:
..... Click the link for more information.
- Source Code Control System, a method of controlling software versions
- Switching Control Center System, an Operations Support System used by telephone companies from the 1970s to 1990s
..... Click the link for more information.
Microsoft Visual SourceSafe (VSS) is a source control software package oriented towards smaller software development projects.
..... Click the link for more information.
Overview
SourceSafe was created by a company called One Tree Software. The first version known was 3...... Click the link for more information.
This article is copied from an article on Wikipedia.org - the free encyclopedia created and edited by online user community. The text was not checked or edited by anyone on our staff. Although the vast majority of the wikipedia encyclopedia articles provide accurate and timely information please do not assume the accuracy of any particular article. This article is distributed under the terms of GNU Free Documentation License.
Herod_Archelaus