a computer; a machine capable of performing many tasks by reading a program
hard-wired machine
a machine designed to perform one task only, like a vacumn cleaner
computer programs or software
instructions to direct the computers operating system and hardware for a specific purpose
instruction set
defines all of the basic commands that the computer can execute
machine language
commands that make up the instruction set; low-level language
graphical user interface (GUI)
the interface used to interact with the program and the computer
modules
code segments
reusability
the ability of a module to be shared by many different applications
client/server design
involves a client & a server; example is a web-based form; involves programs client side & server side
object-oriented programming (OOP)
code that is developed to permit a broad range of operations to be performed on a specific data set
attributes
in OOP, the items that comprise the data set; also known as fields
methods
in OOP, the operations performed on the data
object
in OOP, a set of attributes along with the methods that are provided to work with them
encapsulated
data is only directly accesible by an objects own methods
Application Programming Interface (API)
interface provided by encapsulated data that prevents inappropriate or incorrect use
algorithm
a set of clearly written, unamiguous instructions that have been developed to perform a task
pseudocode
mix of English & programming language syntax that a programmer can translate into code
high-level programming language
a set of special words, symbols & operators that a programmer uses to write program instructions--that must then be translated to machine language for the computer to use
compiling language
entire sourcecode for a program in converted to an executable file before being given to an end user
interpreted language
execution of programs dependent on a special program known as an interpreter
standalone application
provides a complete service on a local computer
network applications
programs that run partly or entirely on remote computers, linked to the user across a network
markup language
provides markup instructions (usually in the form of tags) that simply describe data or indicate how data is to be formatted