Logo
Unionpedia
Communication
Get it on Google Play
New! Download Unionpedia on your Android™ device!
Install
Faster access than browser!
 

Modular programming

Index Modular programming

Modular programming is a software design technique that emphasizes separating the functionality of a programme into independent, interchangeable modules, such that each contains everything necessary to execute only one aspect of the desired functionality. [1]

103 relations: Ada (programming language), ALGOL, ALGOL 68, ALGOL 68-R, ALGOL 68C, Architecture description language, Assembly (CLI), Assembly language, Blitz BASIC, C (programming language), C Sharp (programming language), C++, Clojure, COBOL, Code reuse, Coding conventions, Cohesion (computer science), Compiler, Component Pascal, Component-based software engineering, Computer program, Constructionist design methodology, Control flow, Conway's law, Coupling (computer programming), CPAN, D (programming language), Dart (programming language), Data structure, David Parnas, Directed acyclic graph, EC (programming language), ECMAScript, Elixir (programming language), Erlang (programming language), F (programming language), F Sharp (programming language), Fortran, Fully qualified name, Go (programming language), Haskell (programming language), IBM i Control Language, IBM RPG, IBM System i, IBM System/360, Implementation, Include directive, Information hiding, Integrated Language Environment, Interface-based programming, ..., IOS 7, Java (programming language), Java package, Java Platform Module System, Java version history, JavaScript, Just-in-time compilation, Larry Constantine, Library (computing), Linker (computing), List of system quality attributes, MATLAB, Mesa (programming language), ML (programming language), Modula, Modula-2, Modula-3, Modular design, NEWP, Niklaus Wirth, NuGet, Oberon (programming language), Oberon-2, Object (computer science), Object Pascal, Object-oriented programming, Objective-C, OCaml, Package manager, PARC (company), Pascal (programming language), Perl, PL/I, Plug-in (computing), Programming idiom, PureBasic, Python (programming language), Ruby (programming language), Run time (program lifecycle phase), Rust (programming language), Separation of concerns, Snippet (programming), Software design, Software system, Standard ML, Structured analysis, Structured programming, The Mythical Man-Month, Turbo Pascal, UCSD Pascal, Visual Basic .NET, WebDNA, .NET Framework. Expand index (53 more) »

Ada (programming language)

Ada is a structured, statically typed, imperative, and object-oriented high-level computer programming language, extended from Pascal and other languages.

New!!: Modular programming and Ada (programming language) · See more »

ALGOL

ALGOL (short for "Algorithmic Language") is a family of imperative computer programming languages, originally developed in the mid-1950s, which greatly influenced many other languages and was the standard method for algorithm description used by the ACM in textbooks and academic sources for more than thirty years.

New!!: Modular programming and ALGOL · See more »

ALGOL 68

ALGOL 68 (short for Algorithmic Language 1968) is an imperative computer programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously defined syntax and semantics.

New!!: Modular programming and ALGOL 68 · See more »

ALGOL 68-R

ALGOL 68-R was the first implementation of the Algorithmic language ALGOL 68.

New!!: Modular programming and ALGOL 68-R · See more »

ALGOL 68C

The language was originally called Z70 and was subsequently morphed into ALGOL 68.

New!!: Modular programming and ALGOL 68C · See more »

Architecture description language

Architecture description languages (ADLs) are used in several disciplines: system engineering, software engineering, and enterprise modelling and engineering.

New!!: Modular programming and Architecture description language · See more »

Assembly (CLI)

Defined by Microsoft for use in recent versions of Windows, an assembly in the Common Language Infrastructure (CLI) is a compiled code library used for deployment, versioning, and security.

New!!: Modular programming and Assembly (CLI) · See more »

Assembly language

An assembly (or assembler) language, often abbreviated asm, is a low-level programming language, in which there is a very strong (but often not one-to-one) correspondence between the assembly program statements and the architecture's machine code instructions.

New!!: Modular programming and Assembly language · See more »

Blitz BASIC

Blitz BASIC refers to the programming language dialect that was interpreted by the first Blitz compilers, devised by New Zealand-based developer Mark Sibly.

New!!: Modular programming and Blitz BASIC · See more »

C (programming language)

C (as in the letter ''c'') is a general-purpose, imperative computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations.

New!!: Modular programming and C (programming language) · See more »

C Sharp (programming language)

C# (/si: ʃɑːrp/) is a multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, generic, object-oriented (class-based), and component-oriented programming disciplines.

New!!: Modular programming and C Sharp (programming language) · See more »

C++

C++ ("see plus plus") is a general-purpose programming language.

New!!: Modular programming and C++ · See more »

Clojure

Clojure (like "closure") is a dialect of the Lisp programming language.

New!!: Modular programming and Clojure · See more »

COBOL

COBOL (an acronym for "common business-oriented language") is a compiled English-like computer programming language designed for business use.

New!!: Modular programming and COBOL · See more »

Code reuse

Code reuse, also called software reuse, is the use of existing software, or software knowledge, to build new software, following the reusability principles.

New!!: Modular programming and Code reuse · See more »

Coding conventions

Coding conventions are a set of guidelines for a specific programming language that recommend programming style, practices, and methods for each aspect of a program written in that language.

New!!: Modular programming and Coding conventions · See more »

Cohesion (computer science)

In computer programming, cohesion refers to the degree to which the elements inside a module belong together.

New!!: Modular programming and Cohesion (computer science) · See more »

Compiler

A compiler is computer software that transforms computer code written in one programming language (the source language) into another programming language (the target language).

New!!: Modular programming and Compiler · See more »

Component Pascal

Component Pascal is a programming language in the tradition of Niklaus Wirth's Pascal, Modula-2, Oberon and Oberon-2.

New!!: Modular programming and Component Pascal · See more »

Component-based software engineering

Component-based software engineering (CBSE), also called as component-based development (CBD), is a branch of software engineering that emphasizes the separation of concerns with respect to the wide-ranging functionality available throughout a given software system.

New!!: Modular programming and Component-based software engineering · See more »

Computer program

A computer program is a collection of instructions for performing a specific task that is designed to solve a specific class of problems.

New!!: Modular programming and Computer program · See more »

Constructionist design methodology

Constructionist design methodology (CDM) is an approach for building highly modular systems of many interacting components.

New!!: Modular programming and Constructionist design methodology · See more »

Control flow

In computer science, control flow (or flow of control) is the order in which individual statements, instructions or function calls of an imperative program are executed or evaluated.

New!!: Modular programming and Control flow · See more »

Conway's law

Conway's law is an adage named after computer programmer Melvin Conway, who introduced the idea in 1967.

New!!: Modular programming and Conway's law · See more »

Coupling (computer programming)

In software engineering, coupling is the degree of interdependence between software modules; a measure of how closely connected two routines or modules are;ISO/IEC/IEEE 24765:2010 Systems and software engineering — Vocabulary the strength of the relationships between modules.

New!!: Modular programming and Coupling (computer programming) · See more »

CPAN

The Comprehensive Perl Archive Network (CPAN) is a repository of over 250,000 software modules and accompanying documentation for 39,000 distributions, written in the Perl programming language by over 12,000 contributors.

New!!: Modular programming and CPAN · See more »

D (programming language)

D is an object-oriented, imperative, multi-paradigm system programming language created by Walter Bright of Digital Mars and released in 2001.

New!!: Modular programming and D (programming language) · See more »

Dart (programming language)

Dart is a general-purpose programming language originally developed by Google and later approved as a standard by Ecma (ECMA-408).

New!!: Modular programming and Dart (programming language) · See more »

Data structure

In computer science, a data structure is a data organization and storage format that enables efficient access and modification.

New!!: Modular programming and Data structure · See more »

David Parnas

David Lorge Parnas (born February 10, 1941) is a Canadian early pioneer of software engineering, who developed the concept of information hiding in modular programming, which is an important element of object-oriented programming today.

New!!: Modular programming and David Parnas · See more »

Directed acyclic graph

In mathematics and computer science, a directed acyclic graph (DAG), is a finite directed graph with no directed cycles.

New!!: Modular programming and Directed acyclic graph · See more »

EC (programming language)

eC (Ecere C) is an object-oriented programming language, defined as a super-set of the C language.

New!!: Modular programming and EC (programming language) · See more »

ECMAScript

ECMAScript (or ES) is a trademarked scripting-language specification standardized by Ecma International in ECMA-262 and ISO/IEC 16262.

New!!: Modular programming and ECMAScript · See more »

Elixir (programming language)

Elixir is a functional, concurrent, general-purpose programming language that runs on the Erlang virtual machine (BEAM).

New!!: Modular programming and Elixir (programming language) · See more »

Erlang (programming language)

Erlang is a general-purpose, concurrent, functional programming language, as well as a garbage-collected runtime system.

New!!: Modular programming and Erlang (programming language) · See more »

F (programming language)

F is a modular, compiled, numeric programming language, designed for scientific programming and scientific computation.

New!!: Modular programming and F (programming language) · See more »

F Sharp (programming language)

F# (pronounced F sharp) is a strongly typed, multi-paradigm programming language that encompasses functional, imperative, and object-oriented programming methods.

New!!: Modular programming and F Sharp (programming language) · See more »

Fortran

Fortran (formerly FORTRAN, derived from Formula Translation) is a general-purpose, compiled imperative programming language that is especially suited to numeric computation and scientific computing.

New!!: Modular programming and Fortran · See more »

Fully qualified name

In computer programming, a fully qualified name is an unambiguous name that specifies which object, function, or variable a call refers to without regard to the context of the call.

New!!: Modular programming and Fully qualified name · See more »

Go (programming language)

Go (often referred to as Golang) is a programming language created at Google in 2009 by Robert Griesemer, Rob Pike, and Ken Thompson.

New!!: Modular programming and Go (programming language) · See more »

Haskell (programming language)

Haskell is a standardized, general-purpose compiled purely functional programming language, with non-strict semantics and strong static typing.

New!!: Modular programming and Haskell (programming language) · See more »

IBM i Control Language

The IBM i Control Language (CL) is a scripting language for the IBM's IBM i platform (previously called OS/400 when running on AS/400 systems) bearing a resemblance to the IBM Job Control Language and consisting of an ever-expanding set of command objects (*CMD) used to invoke traditional AS/400 programs and/or get help on what those programs do.

New!!: Modular programming and IBM i Control Language · See more »

IBM RPG

RPG is a high-level programming language (HLL) for business applications.

New!!: Modular programming and IBM RPG · See more »

IBM System i

The IBM System i is IBM's previous generation of midrange computer systems for IBM i users, and was subsequently replaced by the IBM Power Systems in April 2008.

New!!: Modular programming and IBM System i · See more »

IBM System/360

The IBM System/360 (S/360) is a family of mainframe computer systems that was announced by IBM on April 7, 1964, and delivered between 1965 and 1978.

New!!: Modular programming and IBM System/360 · See more »

Implementation

Implementation is the realization of an application, or execution of a plan, idea, model, design, specification, standard, algorithm, or policy.

New!!: Modular programming and Implementation · See more »

Include directive

Many programming languages and other computer files have a directive, often called include (as well as copy and import), that causes the contents of a second file to be inserted into the original file.

New!!: Modular programming and Include directive · See more »

Information hiding

In computer science, information hiding is the principle of segregation of the design decisions in a computer program that are most likely to change, thus protecting other parts of the program from extensive modification if the design decision is changed.

New!!: Modular programming and Information hiding · See more »

Integrated Language Environment

The Integrated Language Environment (ILE) is a programming model developed by IBM for their AS/400 line of computers and remains an important part of the IBM i programming environment.

New!!: Modular programming and Integrated Language Environment · See more »

Interface-based programming

Interface-based programming, also known as interface-based architecture, is an architectural pattern for implementing modular programming at the component level in an object-oriented programming language which does not have a module system.

New!!: Modular programming and Interface-based programming · See more »

IOS 7

iOS 7 is the seventh major release of the iOS mobile operating system developed by Apple Inc., being the successor to iOS 6.

New!!: Modular programming and IOS 7 · See more »

Java (programming language)

Java is a general-purpose computer-programming language that is concurrent, class-based, object-oriented, and specifically designed to have as few implementation dependencies as possible.

New!!: Modular programming and Java (programming language) · See more »

Java package

A Java package organizes Java classes into namespaces, providing a unique namespace for each type it contains.

New!!: Modular programming and Java package · See more »

Java Platform Module System

The Java Module System specifies a distribution format for collections of Java code and associated resources.

New!!: Modular programming and Java Platform Module System · See more »

Java version history

The Java language has undergone several changes since JDK 1.0 as well as numerous additions of classes and packages to the standard library.

New!!: Modular programming and Java version history · See more »

JavaScript

JavaScript, often abbreviated as JS, is a high-level, interpreted programming language.

New!!: Modular programming and JavaScript · See more »

Just-in-time compilation

In computing, just-in-time (JIT) compilation, (also dynamic translation or run-time compilation), is a way of executing computer code that involves compilation during execution of a program – at run time – rather than prior to execution.

New!!: Modular programming and Just-in-time compilation · See more »

Larry Constantine

Larry LeRoy Constantine (pronounced Constanteen; born 1943) is an American software engineer, professor in the Center for Exact Sciences and Engineering at the University of Madeira Portugal, and considered one of the pioneers of computing.

New!!: Modular programming and Larry Constantine · See more »

Library (computing)

In computer science, a library is a collection of non-volatile resources used by computer programs, often for software development.

New!!: Modular programming and Library (computing) · See more »

Linker (computing)

In computing, a linker or link editor is a computer utility program that takes one or more object files generated by a compiler and combines them into a single executable file, library file, or another 'object' file.

New!!: Modular programming and Linker (computing) · See more »

List of system quality attributes

Within systems engineering, quality attributes are realized non-functional requirements used to evaluate the performance of a system.

New!!: Modular programming and List of system quality attributes · See more »

MATLAB

MATLAB (matrix laboratory) is a multi-paradigm numerical computing environment and proprietary programming language developed by MathWorks.

New!!: Modular programming and MATLAB · See more »

Mesa (programming language)

Mesa is a programming language developed in the late 1970s at the Xerox Palo Alto Research Center in Palo Alto, California, United States.

New!!: Modular programming and Mesa (programming language) · See more »

ML (programming language)

ML (Meta Language) is a general-purpose functional programming language.

New!!: Modular programming and ML (programming language) · See more »

Modula

The Modula programming language is a descendant of the Pascal programming language.

New!!: Modular programming and Modula · See more »

Modula-2

Modula-2 is a computer programming language designed and developed between 1977 and 1985 by Niklaus Wirth at the Swiss Federal Institute of Technology in Zurich (ETH Zurich) as a revision of Pascal to serve as the sole programming language for the operating system and application software for the personal workstation Lilith.

New!!: Modular programming and Modula-2 · See more »

Modula-3

Modula-3 is a programming language conceived as a successor to an upgraded version of Modula-2 known as Modula-2+.

New!!: Modular programming and Modula-3 · See more »

Modular design

Modular design, or "modularity in design", is a design approach that subdivides a system into smaller parts called modules or skids, that can be independently created and then used in different systems.

New!!: Modular programming and Modular design · See more »

NEWP

NEWP (or the New Executive Programming Language) is a high-level programming language used on the Unisys MCP systems.

New!!: Modular programming and NEWP · See more »

Niklaus Wirth

Niklaus Emil Wirth (born 15 February 1934) is a Swiss computer scientist, best known for designing several programming languages, including Pascal, and for pioneering several classic topics in software engineering.

New!!: Modular programming and Niklaus Wirth · See more »

NuGet

NuGet is a free and open-source package manager designed for the Microsoft development platform (formerly known as NuPack).

New!!: Modular programming and NuGet · See more »

Oberon (programming language)

Oberon is a general-purpose programming language created in 1986 by Niklaus Wirth and the latest member of the Wirthian family of ALGOL-like languages (Euler, Algol-W, Pascal, Modula, and Modula-2).

New!!: Modular programming and Oberon (programming language) · See more »

Oberon-2

Oberon-2 is an extension of the original Oberon programming language that adds limited reflection and object-oriented programming facilities, open arrays as pointer base types, read-only field export and reintroduces the FOR loop from Modula-2.

New!!: Modular programming and Oberon-2 · See more »

Object (computer science)

In computer science, an object can be a variable, a data structure, a function, or a method, and as such, is a value in memory referenced by an identifier.

New!!: Modular programming and Object (computer science) · See more »

Object Pascal

Object Pascal refers to a branch of object-oriented derivatives of Pascal, mostly known as the primary programming language of Delphi.

New!!: Modular programming and Object Pascal · See more »

Object-oriented programming

Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which may contain data, in the form of fields, often known as attributes; and code, in the form of procedures, often known as methods. A feature of objects is that an object's procedures can access and often modify the data fields of the object with which they are associated (objects have a notion of "this" or "self").

New!!: Modular programming and Object-oriented programming · See more »

Objective-C

Objective-C is a general-purpose, object-oriented programming language that adds Smalltalk-style messaging to the C programming language.

New!!: Modular programming and Objective-C · See more »

OCaml

OCaml, originally named Objective Caml, is the main implementation of the programming language Caml, created by Xavier Leroy, Jérôme Vouillon, Damien Doligez, Didier Rémy, Ascánder Suárez and others in 1996.

New!!: Modular programming and OCaml · See more »

Package manager

A package manager or package management system is a collection of software tools that automate the process of installing, upgrading, configuring, and removing computer programs for a computer's operating system in a consistent manner.

New!!: Modular programming and Package manager · See more »

PARC (company)

PARC (Palo Alto Research Center; formerly Xerox PARC) is a research and development company in Palo Alto, California, with a distinguished reputation for its contributions to information technology and hardware systems.

New!!: Modular programming and PARC (company) · See more »

Pascal (programming language)

Pascal is an imperative and procedural programming language, which Niklaus Wirth designed in 1968–69 and published in 1970, as a small, efficient language intended to encourage good programming practices using structured programming and data structuring. It is named in honor of the French mathematician, philosopher and physicist Blaise Pascal. Pascal was developed on the pattern of the ALGOL 60 language. Wirth had already developed several improvements to this language as part of the ALGOL X proposals, but these were not accepted and Pascal was developed separately and released in 1970. A derivative known as Object Pascal designed for object-oriented programming was developed in 1985; this was used by Apple Computer and Borland in the late 1980s and later developed into Delphi on the Microsoft Windows platform. Extensions to the Pascal concepts led to the Pascal-like languages Modula-2 and Oberon.

New!!: Modular programming and Pascal (programming language) · See more »

Perl

Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages, Perl 5 and Perl 6.

New!!: Modular programming and Perl · See more »

PL/I

PL/I (Programming Language One, pronounced) is a procedural, imperative computer programming language designed for scientific, engineering, business and system programming uses.

New!!: Modular programming and PL/I · See more »

Plug-in (computing)

In computing, a plug-in (or plugin, add-in, addin, add-on, addon, or extension) is a software component that adds a specific feature to an existing computer program.

New!!: Modular programming and Plug-in (computing) · See more »

Programming idiom

A programming idiom or code idiom is expressing a special feature of a recurring construct in one or more programming languages.

New!!: Modular programming and Programming idiom · See more »

PureBasic

PureBasic is a commercially distributed procedural computer programming language and integrated development environment based on BASIC and developed by Fantaisie Software for Windows 32/64-bit, Linux 32/64-bit, and macOS.

New!!: Modular programming and PureBasic · See more »

Python (programming language)

Python is an interpreted high-level programming language for general-purpose programming.

New!!: Modular programming and Python (programming language) · See more »

Ruby (programming language)

Ruby is a dynamic, interpreted, reflective, object-oriented, general-purpose programming language.

New!!: Modular programming and Ruby (programming language) · See more »

Run time (program lifecycle phase)

In computer science, run time, runtime or execution time is the time during which a program is running (executing), in contrast to other program lifecycle phases such as compile time, link time and load time.

New!!: Modular programming and Run time (program lifecycle phase) · See more »

Rust (programming language)

Rust is a systems programming language sponsored by Mozilla which describes it as a "safe, concurrent, practical language," supporting functional and imperative-procedural paradigms.

New!!: Modular programming and Rust (programming language) · See more »

Separation of concerns

In computer science, separation of concerns (SoC) is a design principle for separating a computer program into distinct sections, such that each section addresses a separate concern.

New!!: Modular programming and Separation of concerns · See more »

Snippet (programming)

Snippet is a programming term for a small region of re-usable source code, machine code, or text.

New!!: Modular programming and Snippet (programming) · See more »

Software design

Software design is the process by which an agent creates a specification of a software artifact, intended to accomplish goals, using a set of primitive components and subject to constraints.

New!!: Modular programming and Software design · See more »

Software system

A software system is a system on intercommunicating components based on software forming part of a computer system (a combination of hardware and software).

New!!: Modular programming and Software system · See more »

Standard ML

Standard ML (SML; "Standard Meta Language") is a general-purpose, modular, functional programming language with compile-time type checking and type inference.

New!!: Modular programming and Standard ML · See more »

Structured analysis

In software engineering, structured analysis (SA) and structured design (SD) are methods for analyzing business requirements and developing specifications for converting practices into computer programs, hardware configurations, and related manual procedures.

New!!: Modular programming and Structured analysis · See more »

Structured programming

Structured programming is a programming paradigm aimed at improving the clarity, quality, and development time of a computer program by making extensive use of the structured control flow constructs of selection (if/then/else) and repetition (while and for), block structures, and subroutines in contrast to using simple tests and jumps such as the go to statement, which can lead to "spaghetti code" that is potentially difficult to follow and maintain.

New!!: Modular programming and Structured programming · See more »

The Mythical Man-Month

The Mythical Man-Month: Essays on Software Engineering is a book on software engineering and project management by Fred Brooks first published in 1975, with subsequent editions in 1982 and 1995.

New!!: Modular programming and The Mythical Man-Month · See more »

Turbo Pascal

Turbo Pascal is a software development system that includes a compiler and an integrated development environment (IDE) for the Pascal programming language running on CP/M, CP/M-86, and MS-DOS.

New!!: Modular programming and Turbo Pascal · See more »

UCSD Pascal

UCSD Pascal was a Pascal programming language system that ran on the UCSD p-System, a portable, highly machine-independent operating system.

New!!: Modular programming and UCSD Pascal · See more »

Visual Basic .NET

Visual Basic.NET (VB.NET) is a multi-paradigm, object-oriented programming language, implemented on the.NET Framework.

New!!: Modular programming and Visual Basic .NET · See more »

WebDNA

WebDNA is a server-side scripting, interpreted language with an embedded database system, specifically designed for the World Wide Web.

New!!: Modular programming and WebDNA · See more »

.NET Framework

.NET Framework (pronounced dot net) is a software framework developed by Microsoft that runs primarily on Microsoft Windows.

New!!: Modular programming and .NET Framework · See more »

Redirects here:

Code Factoring, Code factoring, Hierarchy of modules, Modular (programming), Modular Programming, Modular software, Modularity (programming), Module (programming), Module system, Software package (programming), Unit (Software Development).

References

[1] https://en.wikipedia.org/wiki/Modular_programming

OutgoingIncoming
Hey! We are on Facebook now! »