Programming
Definitions related to software programming, including tech terms about programming languages and words and phrases about software design, coding, testing and debugging.3-T - DIS
- 3-tier application architecture - A 3-tier application architecture is a modular client-server architecture that consists of a presentation tier, an application tier and a data tier.
- 42 (h2g2, meaning of life, The Hitchhiker's Guide to the Galaxy) - In Douglas Adams' "The Hitchhiker's Guide to the Galaxy," 42 is the number from which all meaning ("the meaning of life, the universe, and everything") can be derived.
- ABAP (Advanced Business Application Programming) - ABAP (Advanced Business Application Programming) is the primary programming language supported on the SAP NetWeaver ABAP application server platform and applications that run on it, such as SAP ERP (formerly R/3), S/4HANA and CRM.
- abend (abnormal end) - An abend (abnormal end) is an unexpected or abnormal termination of an application or operating system that results from a problem with the software.
- absolute link - An absolute link is a hyperlink containing a full URL, which includes all the information needed to find a particular site, page or document or other addressable item on the Internet.
- abstract class - An abstract class is a template definition of methods and variables in a specific class, or category of objects.
- abstraction - Abstraction (from the Latin abs, meaning away from and trahere, meaning to draw) is the process of taking away or removing characteristics from something in order to reduce it to a set of essential characteristics.
- acceptance testing - Acceptance testing is a quality assurance (QA) process that determines to what degree an application meets end users' approval.
- ActiveX - ActiveX is a set of object-oriented programming technologies and tools that Microsoft developed for Internet Explorer to facilitate rich media playback.
- ActiveX controls - ActiveX controls are component program objects that Microsoft developed to enable applications to perform specific functions, such as displaying a calendar or playing a video.
- address space - Address space is the amount of memory allocated for all possible addresses for a computational entity -- for example, a device, a file, a server or a networked computer.
- Adobe Flash - Adobe Flash is a software platform used to create rich digital content containing animation, graphic effects, streaming video and other interactive elements to deliver engaging user experiences over many platforms, including desktops and mobile devices.
- Agile software development - Agile is a type of software development methodology that anticipates the need for flexibility and applies a level of pragmatism to the delivery of the finished product.
- agile test automation pyramid - The agile test automation pyramid is a graphical strategy guide for implementing automated software testing.
- agnostic - Agnostic, in an information technology (IT) context, refers to something that is generalized so that it is interoperable among various systems.
- AJAX (Asynchronous JavaScript and XML) - AJAX (Asynchronous JavaScript and XML) is a technique aimed at creating better and faster interactive web apps by combining several programming tools including JavaScript, dynamic HTML (DHTML) and Extensible Markup Language (XML).
- alphanumeric (alphameric) - Alphanumeric, also referred to as alphameric, is a term that encompasses all of the letters and numerals in a given language set.
- Amdahl's law - Amdahl's law -- also known as Amdahl's argument -- is an intuitive observation and an associated formula.
- Apache Solr - Apache Solr is an open source search platform built upon a Java library called Lucene.
- Apex (Salesforce) - Salesforce Apex is a Microsoft-certified framework for building software as a service (SaaS) apps on top of Salesforce's customer relationship management (CRM) functionality.
- API gateway - An API gateway is a software pattern that sits in front of an application programming interface (API) or group of microservices, to facilitate requests and delivery of data and services.
- application lifecycle management (ALM) - Application lifecycle management (ALM) is an integrated system of people, tools and processes that supervise a software application from its initial planning and development, through testing and maintenance, and into decommissioning and retirement.
- application programming interface (API) - An application programming interface (API) is code that enables two software programs to communicate.
- application security - Application security, or appsec, is the practice of using security software, hardware, techniques, best practices and procedures to protect computer applications from external security threats.
- aspect-oriented programming (AOP) - Aspect-oriented programming (AOP) is an approach to programming that allows global properties of a program to determine how it is compiled into an executable program.
- assembler - An assembler is a computer program that takes in basic instructions and converts them into a pattern of bits that the computer's processor can use to perform basic operations.
- Asynchronous - In general, asynchronous -- pronounced ay-SIHN-kro-nuhs, from Greek asyn-, meaning "not with," and chronos, meaning "time" -- is an adjective describing objects or events that are not coordinated in time.
- attribute - In general, an attribute is a property, quality, or characteristic that something or someone has.
- automated testing - Automated testing is a software testing technique that automates the process of validating the functionality of software and ensures it meets requirements before being released into production.
- Azure Service Fabric - Azure Service Fabric is a Platform as a Service (PaaS) offering designed to facilitate the development, deployment and management of highly-scalable and customizable applications for the Microsoft Azure cloud platform.
- backdoor (computing) - A backdoor attack is a means to access a computer system or encrypted data that bypasses the system's customary security mechanisms.
- backslash - The backslash ( \ ) is a typographic and/or keyboard mark that is widely used in programming languages and other computing contexts.
- Ballerina language - Ballerina language is an open-source, cloud-native programming language designed to ease the burden of integration development associated with enterprise applications.
- bash (Bourne again shell) - Bash (Bourne Again Shell) is the free and enhanced version of the Bourne shell distributed with Linux and GNU operating systems.
- BASIC (Beginner's All-purpose Symbolic Instruction Code) - BASIC was an early programming language that is still among the simplest and most popular of programming languages.
- Bean - In its JavaBeans application program interface for writing a component, Sun Microsystems calls a component a "Bean" (thus continuing their coffee analogy).
- best practice - A best practice is a standard or set of guidelines that is known to produce good outcomes if followed.
- binary file - A binary file is a file whose content is in a binary format that consists of a series of sequential bytes, each of which is eight bits in length.
- binary-coded decimal - Binary-coded decimal is a system of writing numerals that assigns a four-digit binary code to each digit 0 through 9 in a decimal (base 10) number.
- bitwise - Bitwise operations manipulate data at the bit level rather than with bytes or larger units of data, as is more common.
- bitwise operator - Because they allow greater precision and require fewer resources, bitwise operators, which manipulate individual bits, can make some code faster and more efficient.
- black box (black box testing) - Black box testing assesses a system solely from the outside, without the operator or tester knowing what is happening within the system to generate responses to test actions.
- blue/green deployment - A blue/green deployment is a change management strategy for releasing software code.
- Boolean - In computing, the term Boolean means a result that can only have one of two possible values: true or false.
- Bootstrap - Bootstrap is a free, open source front-end development framework for the creation of websites and web apps.
- Boto - Boto is a software development kit (SDK) designed to improve the use of the Python programming language in Amazon Web Services.
- Bourne shell - The Bourne shell is the original Unix shell -- command execution program, often called a command interpreter -- that was developed in 1979 at what at the time was Bell Labs.
- BPEL (Business Process Execution Language) - BPEL (Business Process Execution Language) is an XML-based language that allows web services, APIs and human processes in a service-oriented architecture (SOA) to interconnect and share data in a business workflow.
- brogrammer - A brogrammer is a male programmer with traits often associated with fraternity brothers (bros) rather than the coder's stereotypical geek persona.
- BSD licenses - BSD licenses are a low restriction type of license for open source software that does not put requirements on redistribution.
- bug - In computer technology, a bug is a coding error in a computer program.
- build - In a programming context, a build is a version of a program that, as a rule, is a pre-release version and is identified by a build number rather than by a release number.
- build server - A build server is a machine on which a software project can be continuously built from changes that are committed to the repository.
- business logic - In programming, business logic is the part of a software program responsible for implementing the business rules that define how data should be created, modified, transformed, communicated and in other ways managed and controlled.
- Business Process Modeling Language (BPML) - Business Process Modeling Language (BPML) is an XML standard metalanguage used to outline business processes in an easy-to-understand way.
- business rules engine (BRE) - A business rules engine (BRE) is a software component that allows non-programmers to add or change business logic in a business process management (BPM) system.
- bytecode - Bytecode is computer object code that an interpreter converts into binary machine code so it can be read by a computer's hardware processor.
- C - The C programming language is a procedural and general-purpose language that provides low-level access to system memory.
- C shell - C shell (csh) is a Unix shell that provides a command-line user interface (UI) to interact with an operating system (OS).
- C# (C-Sharp) - C#, pronounced "C-sharp," is an object-oriented programming language from Microsoft that enables developers to build applications that run on the .
- C++ - C++ is an object-oriented programming (OOP) language that is viewed by many as the best language for creating large-scale applications.
- Capability Maturity Model (CMM) - The Capability Maturity Model (CMM) is a methodology used to develop and refine an organization's software development process.
- CAPI (Common Application Programming Interface) - CAPI (Common Application Programming Interface) is an international standard interface that applications can use to communicate directly with ISDN equipment.
- cellular automaton (CA) - A cellular automaton (CA) is a collection of cells arranged in a grid of specified shape, such that each cell changes state as a function of time, according to a defined set of rules driven by the states of neighboring cells.
- change control - Change control is a systematic approach to managing all changes made to a product or system.
- chatbot - A chatbot is a software or computer program that simulates the human conversation or "chatter" through text or voice interactions.
- CICS (Customer Information Control System) - CICS (Customer Information Control System) is middleware that sits between the z/OS IBM mainframe operating system and business applications.
- class - In object-oriented programming, a class is a template definition of the methods and variables in a particular kind of object.
- class library (in object-oriented programming) - In object-oriented programming, a class library is a collection of classes and other reusable software components, such as interfaces and value types.
- COBOL (Common Business Oriented Language) - COBOL (Common Business-Oriented Language) is a high-level programming language for business applications.
- code - In computer programming, 'computer code' refers to the set of instructions, or a system of rules, written in a particular programming language (i.
- codebase (code base) - A codebase, or code base, is the complete body of source code for a software program, component or system.
- Common Information Model (CIM) - The Common Information Model (CIM) is a computer industry standard that defines device and application characteristics so system administrators and management programs can control devices and applications from different manufacturers.
- Common Language Runtime (CLR) - The Common Language Runtime (CLR) is programming that manages the execution of programs written in any of several supported languages, allowing them to share common object-oriented classes written in any of the languages.
- compiler - A compiler is a special program that translates a programming language's source code into machine code, bytecode or another programming language.
- component - In programming and engineering disciplines, a component is an identifiable part of a larger program or construction.
- computer instruction - A computer instruction is an order given to a computer processor by a computer program.
- computer-aided software engineering (CASE) - Computer-aided software engineering (CASE) describes a broad set of labor-saving tools used in software development.
- Concurrent Versions System (CVS) - CVS also is an abbreviation for Computer Vision Syndrome.
- connection - In telecommunication and computing in general, a connection is the successful completion of necessary arrangements so that two or more parties (for example, people or programs) can communicate at a long distance.
- const - Const (constant) in programming is a keyword that defines a variable or pointer as unchangeable.
- content personalization - Content personalization is a branding and marketing strategy in which webpages, email and other forms of content are tailored to match the characteristics, preferences or behaviors of individual users.
- context menu (right-click menu) - A context menu is a pop-up menu that provides shortcuts for actions the software developer anticipates the user might want to take.
- continuous deployment - Continuous deployment is a strategy for software development and releases in which every code change is automatically run through a pipeline of tests and inspections before being pushed into production.
- continuous integration (CI) - Continuous integration (CI) is a software development practice in which frequent, isolated changes are immediately tested and reported on when they're added to a larger codebase.
- cross-site scripting (XSS) - Cross-site scripting (XSS) is a type of injection attack in which a threat actor inserts data, such as a malicious script, into content from otherwise trusted websites.
- cruft - Cruft is the elements of a program, system or product that are either useless, poorly designed or both.
- Cygwin - Cygwin is a collection of open source tools that allows Unix or Linux applications to be compiled and run on a Microsoft Windows operating system (OS) from within a Linux-like interface.
- d3.js (data-driven documents) - D3.js (data-driven documents) is a library of JavaScript code that enables users to input their own data into prebuilt visualizations.
- data abstraction - Data abstraction is the reduction of a particular body of data to a simplified representation of the whole.
- data analytics (DA) - Data analytics (DA) is the process of examining data sets to find trends and draw conclusions about the information they contain.
- data preprocessing - Data preprocessing, a component of data preparation, describes any type of processing performed on raw data to prepare it for another data processing procedure.
- data type - In software programming, data type refers to the type of value a variable has and what type of mathematical, relational or logical operations can be applied without causing an error.
- debugging - Debugging, in computer programming and engineering, is a multistep process that involves identifying a problem, isolating the source of the problem and then either correcting the problem or determining a way to work around it.
- decompile - To decompile means to convert executable or ready-to-run program code -- sometimes called object code -- into some form of higher-level programming language that humans can easily understand.
- deductive argument - A deductive argument is a logic construct with two or more premises and a conclusion where if the premises are true then the conclusion must also be true.
- deprecated - In information technology (IT), deprecation means that although something is available or allowed, it is not recommended or that -- in the case where something must be used -- to say it is deprecated means that its failings are recognized.
- development environment - In software, web and mobile application development, the development environment is a workspace with a set of processes and programming tools used to develop the source code for an application or software product.
- diskpart (Disk Partition Utility) - Diskpart is a command line utility in Windows operating systems (OSs) that is used to manage disks, partitions, and volumes.
- Distributed Component Object Model (DCOM) - Distributed Component Object Model (DCOM) is an extension to Component Object Model (COM) that enables software components to communicate with each other across different computers on a local area network (LAN), on a wide area network (WAN) or across the internet.