Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Programming tool
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Computer program used to develop another program}} {{distinguish|Programmable tooling}} {{software development process}} A '''programming tool''' or '''software development tool''' is a [[computer program]] that is used to [[software development|develop]] another computer program, usually by helping the developer manage [[computer file]]s. For example, a [[programmer]] may use a tool called a [[source code editor]] to edit [[source code]] files, and then a [[compiler]] to convert the source code into [[machine code]] files. They may also use [[Build automation|build tools]] that automatically package executable program and data files into shareable [[package manager|packages]] or [[Installation (computer programs)|install kits]]. A set of tools that are run one after another, with each tool feeding its output to the next one, is called a [[toolchain]]. An [[integrated development environment]] (IDE) integrates the function of several tools into a single program. Usually, an IDE provides a source code editor as well as other built-in or [[Plug-in (computing)|plug-in]] tools that help with [[compiler|compiling]], [[debugging]], and [[software test|testing]]. Whether a program is considered a development tool can be subjective. Some programs, such as the [[GNU compiler collection]], are used exclusively for software development while others, such as [[Windows Notepad|Notepad]], are not meant specifically for development but are nevertheless often used for programming. == Categories == Notable categories of development tools: * [[Assembly language|Assembler]] {{endash}} Converts assembly language into machine code * {{Annotated link|Bug tracking system}} * {{Annotated link|Build automation}} * {{Annotated link|Code review|Code review software}} * {{Annotated link|Compiler}} * {{Annotated link|Compiler-compiler}}, a.k.a. parser generator * {{Annotated link|Debugger}} * {{Annotated link|Decompiler}} * {{Annotated link|Disassembler}} * {{Annotated link|Documentation generator}} * {{Annotated link|Graphical user interface builder}} * {{Annotated link|Linker (computing)|Linker}} * {{Annotated link|Memory debugger}} * {{Annotated link|Minification (programming)|Minifier}} * {{Annotated link|Prettyprint|Pretty-printer}} * {{Annotated link|Profiling (computer programming)|Performance profiler}} * {{Annotated link|Static code analysis|Static code analyzer}} * {{Annotated link|Source code editor}} * {{Annotated link|Source code generation}} * [[Version control|Version control system]] {{endash}} Stores and tracks versions of files ==See also== <!-- Please maintain alphabetical order --> * {{Annotated link|Call graph}} * {{Annotated link|Comparison of integrated development environments}} * {{Annotated link|Computer aided software engineering}} * {{Annotated link|Git}} * {{Annotated link|GitHub}} * {{Annotated link|Lint (software)|Lint}} * {{Annotated link|List of software engineering topics}} * {{Annotated link|List of unit testing frameworks}} * {{Annotated link|Manual memory management}} * {{Annotated link|Memory leak}} * {{Annotated link|Reverse-engineering}} * {{Annotated link|Revision Control System}} * {{Annotated link|Software development kit}} * {{Annotated link|Software engineering}} * {{Annotated link|SourceForge}} * {{Annotated link|SWIG}} * {{Annotated link|Toolkits for User Innovation}} * {{Annotated link|Valgrind}} ==References== {{More footnotes|date=August 2010}} {{reflist}} {{refbegin}} * [https://www.csm.ornl.gov/workshops/Petascale07 Software Development Tools for Petascale Computing Workshop 2007] * {{Citation |last1=Kernighan |first1=Brian W. |author-link1=Brian Kernighan |last2=Plauger |first2=P. J. |author2-link=P. J. Plauger |year=1976 |title=Software Tools |publisher=Addison-Wesley |pages=[https://archive.org/details/softwaretools00kern/page/352 352] |isbn=0-201-03669-X |url-access=registration |url=https://archive.org/details/softwaretools00kern/page/352 }} {{refend}} ==External links== {{commons category-inline|Programming tools}} {{Authority control}} {{Software engineering}} [[Category:Programming tools|*]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Annotated link
(
edit
)
Template:Authority control
(
edit
)
Template:Citation
(
edit
)
Template:Commons category-inline
(
edit
)
Template:Distinguish
(
edit
)
Template:Endash
(
edit
)
Template:More footnotes
(
edit
)
Template:Refbegin
(
edit
)
Template:Refend
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Software development process
(
edit
)
Template:Software engineering
(
edit
)