Module (programming): Difference between revisions

Content deleted Content added
m Robot-assisted disambiguation (you can help!): Python programming language
only some derivative of the pascal language (see [[Turbo pascal)
Line 3:
In [[computer science]], a '''module''' is a software entity that groups a set of (typically [[cohesion (computer science)|cohesive]]) [[subprogram]]s and [[data structure]]s. Modules are units that can be [[compiler|compiled]] separately, which makes them reusable and allows multiple programmers to work on different modules simultaneously. Modules also promote [[modularity (programming)|modularity]] and encapsulation (i.e. [[information hiding]]), both of which can make complex programs easier to understand.
 
Modules provide a separation between [[interface (computer science)|interface]] and [[implementation]]. A module interface expresses the elements that are provided and required by the module. The elements defined in the interface are visible to other modules. The implementation contains the working code that corresponds to the elements declared in the interface. Languages that explicitly support the module concept include [[Ada programming language|Ada]], [[D programming language|D]], [[F programming language|F]], [[Fortran]], [[Pascal programming language|Pascal]] (some derivatives), [[ML programming language|ML]], [[Modula-2]], [[Python (programming language)|Python]] and [[Ruby programming language|Ruby]]. The IBM System i (aka AS/400 and iSeries) also uses Modules in RPG, COBOL and CL when programming in the ILE environment.
 
== Modules and classes ==