Package development process: Difference between revisions

Content deleted Content added
m Reverted edit by Prabhjotsingh1625 (talk) to last version by Babs kenny
Arveeio (talk | contribs)
m Fixing a poorly worded sentence.
 
(2 intermediate revisions by 2 users not shown)
Line 2:
{{tone|date=August 2017}}
{{Lead rewrite|date=July 2023}}
A software '''package development process''' is a system for developing [[Software package (installation)|software packages]]. PackagesSuch packages are used to reuse and share code, e.g., via a [[software repository]],. A package development process includes a formal system for package checking that usually exposes bugs, thereby potentially making it easier to produce ''trustworthy software'' ([[John Chambers (statistician)|Chambers']] ''prime directive'').<ref>{{cite book
| last = Chambers | first = John M. | authorlink=John Chambers (statistician)
| title = Software for Data Analysis: Programming with R
Line 8:
| year = 2008
| isbn = 978-0-387-75935-7
}}</ref> It may also include a standard for documentation, thereby making it easier for new users to learn how to use it.
}}
</ref>
 
==Discussion==
In this context, a ''package'' is a collection of functions written for use in a single language such as [[Python (programming language)|Python]] or [[R (programming language)|R]],. It may also be bundled with documentation. For many programming languages, there are [[Software repository|software repositories]] where people share such packages.
 
For example, a [[Python (programming language)|Python]] package combines documentation, code and initial set up and possibly examples that could be used as [[unit testing|unit tests]] in a single file with a "py" extension.
 
By contrast, an [[R (programming language)|R]] package has documentation with examples in files separate from the code, possibly bundled with other material such as sample data sets and introductory vignettes. The source code for an R package is contained in a directory with a master "description" file and separate subdirectories for documentation, code, optionalor data sets suitable for unit or regression testing, and perhaps others.<ref>{{cite book|title=Writing R Extensions |authorlink=<!-- R Development Core Team --> |url =https://cran.r-project.org/doc/manuals/R-exts.html }}</ref> A formal package compilation process
<ref>{{cite news
| last = Leisch | first = Friedrich