Chapter 13: Program Development and Programming Languages Flashcards
agile software development (ASD)
An approach to program design that uses short development cycles in order to produce small functional pieces of a program on an ongoing basis. (p510)
API (application program interface)
A set of commands, functions, and protocols used by programmers when building software for a particular operating system (or apps to interface with a particular Web site). (p531)
Application lifecycle management (ALM)
A broad term to describe complete systems that can be used to create and manage an application throughout its entire life cycle from design through retirement. (p528)
Aspect-oriented programming (AOP)
An approach to program design in which different functions are clearly separated so program components can be developed and modified independently from one another, and the components can be easily reused with separate, nonrelated objects. (p510)
Assembly language
A low-level programming language that uses names and other symbols to replace some of the 0s and 1s in machine language. (p533)
BASIC
An easy-to-learn, high-level programming language that was developed to be used by beginning programmers. (p537)
C
A high-level structured programming language that has the execution efficiency of an assembly language. (p538)
C#
The newest, object-oriented version of the C programming language. (p538)
C++
A newer, object-oriented version of the C programming language. (p538)
COBOL
A high-level programming language developed for transaction processing applications. (p536)
coding
The process of writing the programming language statements to create a computer program. (p520)
compiler
A language translator that converts an entire program into machine language before executing it. (p524)
control structure
A pattern for controlling the flow of logic in a computer program, module, or method. (p515)
Dart
A high-level, open source, object-oriented programming language developed by Google and designed to replace JavaScript in Web applications. (p541)
debugging
The process of ensuring a program is free of errors. (p523)
Flowcharts
A program design tool that graphically shows step-by-step the actions a computer program will take. (p512)
FORTRAN
A high-level programming language used for mathematical, scientific, and engineering applications. (p535)
Fourth-generation languages (4GLs)
A class of programming languages that is closer to natural language and easier to work with than high-level languages. (p535)
High-level languages
A class of programming languages that is closer to natural language and easier to work with than a low-level language. (p533)
Integrated development environments (IDEs)
A collection of tools used with a particular programming language to develop and test software programs. (p530)
Interpreters
A language translator that converts program statements line-by-line into machine language, immediately executing each statement. (p524)
Java
A high-level, object-oriented programming language frequently used for Web applications. (p539)
language translator
A software program that converts source code to object code. (p523)
logic errors
A programming error that occurs when running a program produces incorrect results. (p526)
low-level languages
A class of programming languages that is highly detailed and machine-dependent. (p532)
machine language
A low-level programming language in which the program code consists of 0s and 1s. (p532)
object code
The machine language version of a computer program generated when the program’s source code is compiled. (p523)
Objective-C
An object-oriented version of the C programming language used to write software for Max OS X and iOS. (p538)
object-oriented programming (OOP)
An approach to program design in which a program consists of objects that contain data (attributes) and processes (methods) to be used with those objects. (p509)
Pascal
A structured, high-level programming language often used to teach structured programming, especially appropriate for use in math and science applications. (p537)
problem analysis
The phase of the program development life cycle in which the problem is carefully considered and the program specifications are developed. (p511)
Procedural programming
An approach to program design in which a program is separated into small modules that are called by the main program or another module when needed. (p507)
program coding
The phase of the program development life cycle in which the program code is written using a programming language. (p520)
program debugging and testing
The phase of the program development life cycle that ensures a program is correct and works as intended. (p523)
program design
The phase of the program development life cycle in which the program specifications are expanded into a complete design of the new program. (p512)
program development
The process of creating application programs. (p511)
program development life cycle (PDLC)
The process containing the five phases of program development: analyzing, designing, coding, debugging and testing, and implementing and maintaining application software. (p511)
program implementation and maintenance
The phase of the program development life cycle in which the program is implemented and then maintained, as needed, to remain useful. (p528)
programmer
A person whose job it is to write, test, and maintain computer programs. (p511)
programming language
A set of rules, words, symbols, and codes used to write computer programs. (p532)
Pseudocode
A program design tool that uses English-like statements to outline the logic of a program. (p514)
Python
A high-level, open source, dynamic, object-oriented programming language that can be used to develop a wide variety of applications. (p541)
repetition control structure
A series of statements in a loop that are repeated until a particular condition is met. (p517)
Ruby
A high-level, open source, object-oriented programming language that is often used to develop Web applications. (p541)
selection control structure
A series of statements in which the results of a decision determine the direction the program takes. (p517)
sequence control structure
A series of statements that follow one another. (p515)
software development kit (SDK)
A programming package designed for a particular platform that enables programmers to develop applications for that platform more quickly and easily. (p531)
source code
A computer program before it is compiled. (p521)
syntax errors
A programming error that occurs when the programmer has not followed the rules of the programming language. (p525)
Unified Modeling Language (UML)
A set of standard notations for creating business models; widely used for modeling object-oriented programs. (p514)
variables
A named memory location defined in a computer program that is used to store the current value of a data item used in that program. (p508)
Visual Basic
A version of the BASIC programming language that uses a visual programming environment and supports object-oriented programming. (p538)
wireframe
A visual representation of the overall design and logic of an app or a Web site. (p513)