-
Parameter
an item of information that is specified to a method when the method is called
-
Actual Parameter
the expression supplied for a formal parameter of a method by the caller
-
Formal Parameter
a variable in a method definition; it is initialized with an actual parameter value when the method is called
-
Argument
an actual parameter in a method call, or one of the values combined by an operator
-
Parameter passing
specifying expressions to be actual parameter values for a method when it is called
-
Explicit Parameter
a parameter of a method other than the object on which the method is invoked
-
Implicit Parameter
the object on which a method is invoked
-
Instance Variable
a variable defined in a class for which every object of the class has its own value
-
Local Variable
a variable whose scope is a block
-
Static Variable
a variable defined in a class that has only one value for the whole class, which can be access and changed by any method in that class
-
Interface (in Java)
a type with no instance variables, only abstract methods and constants
-
Method
a sequence of statements that has a name and is invoked when called
-
Overloading a method
giving more than one meaning to a method name
-
Overriding a method
redefining a method in a subclass
-
Static Method
A method with no implicit parameter
-
Accessor Method
a method that accesses an object but does not change it ("getter" method)
-
Constructor
a method that initializes a newly instantiated object
-
Mutator method
a method that changes the state of an object ("setter" method)
-
ACK
(acknowledgement message) when a node A sends a packet to node B using the ARQ algorithm, B sends A an ACK to confirm receipt
-
ARQ Algorithm
(Automatic Repeat request) strategy currently in use by data link protocols for sending and receiving message packets
-
Algorithm
a sequence of steps that is unambiguous, executable and terminating
-
API
(Application Programming Interface) a code library for building programs
-
I/O buffer
a small amount of memory used by the I/O controller (CPU)
-
I/O controller
section of CPU that compensates for any speed differences between I/O devices and other parts of the computer
-
Control Unit
section of the CPU that selects and executes instructions
-
Arithmetic/Logic Unit (ALU)
the subsystem of a CPU that performs mathematical and logical operations
-
Instruction Register
(IR) holds a copy of the instruction fetched from memory
-
ASCII
(American Standard Code for Information Interchange) international standard for representing textual information in the majority of computers (8-bit)
-
Binary
the digital representation of data using bits (ones and zeros)
-
Bit
a binary digit having one of two possible values (0 or 1)
-
Boolean
the most primitive data type, having one of two possible values (true or false)
-
Boolean Expression
an expression that results in a true or false value (e.g. A & B)
-
Boolean Operator
logical operators that can be applied to Boolean values (e.g. AND, OR, NOT)
-
Byte
smallest unit of storage that can be accessed in memory (8 bits)
-
Bytecode
Instructions for the Java virtual machine (typically written by a compiler)
-
Address
unique identifier used to fetch data from a memory cell or store data to a memory cell
-
Cache memory
a special, high-speed memory unit; frequently used data is stored here; typically 5 to 10 times faster than RAM but much smaller
-
Memory
the functional unit of a computer that stores and retrieves instructions and data being executed
-
Register
a storage cell that holds the operands of an arithmetic operation and holds its result when the operation is complete
-
Memory Address Register (MAR)
holds the address of the cell to be fetched or stored
-
Memory Data Register (MDR)
contains the data value being fetched or stored
-
Random Access Memory
(RAM) the time it takes to fetch or store the contents of a cell is the same for all the cells in memory (access technique used by memory)
-
Cast
Explicitly converting a value from one data type to another
-
Church-Turing Thesis
thesis that states if an algorithm for solving a problem exists, then a Turing machine for solving that problem must also exist
-
Class
blueprint from which individual objects are created; a programmer-defined data type
-
Compiler
a program that translates high-level code (e.g. Java) to machine language (e.g. bytecode).
-
Computability
the ability to solve a problem in an effective manner; existence of an algorithm to solve a problem
-
Computer network
a collection of computers interconnected by communications channels that allows users to share resources
-
Computer Science
the study of algorithms using computers and software
-
Computing Agent
the machine, person or thing carrying out the steps of an algorithm
-
DASD
(Direct access storage device) a type of storage device in which data is stored at precise locations, enabling direct retrieval without scanning
-
DNS
(Domain Name System) a special Internet application that converts a symbolic host name (e.g. Columbia.edu) to its 32-bit IP address
-
Ethernet
the most widely used broadband technology in commercial and office environment
-
Encapsulation
the hiding of implementation details
-
flops
(FLoating point OPerations per Second) a measure of a computer�s performance
-
Kilobyte
(KB) 2^10 bytes (1024)
-
Megabyte
(MB) 2^20 bytes (more than one million: 10^6)
-
Gigabyte
(GB) 2^30 bytes (more than one billion: 10^9)
-
Terabyte
(TB) 2^40 bytes (more than one trillion bytes: 10^12)
-
Halting Problem
given a Turing machine and some input for that machine, determine if that machine will halt or not
-
HTTP
(Hypertext Transfer Protocol) the protocol that defines communication between web browsers/servers
-
IDE
(Integrated Development Environment) a programming environment integrated into a software application (e.g. Eclipse)
-
Inheritance (in Java)
the "is-a" relationship between a more general superclass and a more specialized subclass
-
Initialize
Setting a variable to an initial value when it is created
-
Instance
refers to an object that has been created (instantiated)
-
Instantiation
creation of a new object (new instance of a class)
-
Internet Protocol
(IP) the network layer of the Internet
-
Assembly Language
a low-level programming language (closely related to machine language)
-
Machine language
the binary instructions that can be decoded and executed by the control unit
-
op code
(Operation Code) a unique unsigned integer code assigned to each machine language operation by the hardware
-
Instruction set
the set of all operations that can be executed by a processor
-
LAN
(local area network) a network that is located in a geographically contiguous area such as a room, a building, or a campus
-
WAN
(wide area network) connects devices that are not in close proximity but rather are across town, country, or the ocean
-
Logic gate
a circuit that takes in inputs and produces an output
-
Loop
a series of instructions that are performed repeatedly until a specific condition has been met (unless it�s an infinite loop)
-
MAC
A Media Access Control address (MAC address) is a unique identifier assigned to network interfaces for communications on the physical network segment
-
Mass storage
a deviced for storing large amounts of data
-
Object
a value of a class type
-
Object reference
a value that denotes the location of an object in memory
-
Object-oriented programming
a method of programming in which each element of the program is treated as an object that can interact with other objects within the program
-
Operating System
the software that launches application programs and provides services for those programs
-
Portability
ability to reuse the existing code when moving software from one environment to another
-
Primitive data type
eight in java: byte, short, int, long, float, double, Boolean, char
-
Protocol
a mutually agreed upon set of rules, conventions, and agreements for the efficient and orderly exchange of information
-
Protocol Stack
five layers: (1) Applications, (2) Transport, (3) Network, (4) Data Link, (5) Physical
-
Pseudocode
a high-level description of a program or algorithm using English and informal programming language syntax
-
SASD
Structured Analysis (SA), Structured Design (SD) are methods for analyzing and converting business requirements into specifications and ultimately, into computer programs
-
Scope
the part of a program in which a variable is defined
-
Software
any program which instructs the hardware on how it should perform
-
Von Neumann architecture
the structure and organization that virtually all modern computers are based on with these characteristics: (A) 1-Memory, 2-I/O, 3-Control Unit, 4-ALU; (B) Sequential Coding; (C) Stored Program Concept
-
Stored Program Concept
the instructions to be executed by the computer are represented as binary values and stored in memory. The idea was introduced in the late 1940s by John von Neumann (big deal/breakthrough)
-
Syntax
grammatical rules in a particular programming language
-
Time Complexity
quantifies the amount of time taken by an algorithm to run as a function of the size of the input to the problem, commonly expressed using big O notation
-
Transistor
elementary building block for all modern computers; Can be in an OFF state (does not allow electricity to flow) or in an ON state (electricity can pass unimpeded)
-
Truth table
a table showing the output state for all possible inputs of Boolean expression
-
Turing machine
a very simple model of computation that is used in theoretical computer science to explore computability of problems
-
White space
Any sequence of only space, tab, and newline characters
|
|