TExES Computer Science 8-12 (241)

¡Supera tus tareas y exámenes ahora con Quizwiz!

syntax diagram

A diagram system, sometimes referred to as railroad diagrams, which is a way to represent a context-free grammar.

monitor

A display device for a computing system, such as a screen or projector.

integer modulus

A division process that results in a whole number answer representing the remainder of the division process, discarding the actual answer.

integer division

A division process that results in a whole number answer, discarding or truncating any fractional remainder.

acceptable use

A document stipulating constraints and practices that a user must agree to for access to a corporate network or the Internet.

BASIC

A family of general-purpose, high-level programming languages whose design philosophy emphasizes ease of use

FAQ

A feature on websites providing answers to such questions that often arise.

programming language

A formal constructed language designed to communicate instructions to a computer.

Linear recursion

A function that only makes a single recursive call to itself each time the function runs (as opposed to one that would call itself multiple times during its execution).

algorithm analysis

A general process that determines the amount of resources (such as time and storage) necessary to execute any particular algorithm, most commonly using Big O notation, such as O(N) or O(N^2)

malware

A general term for malicious software or code (called malcode) specifically designed to damage, disrupt, steal or inflict illegitimate action on data, hosts, or networks.

C

A general, all-purpose programming language developed by Dennis Ritchie in the late 60s and early 70s at the AT&T Bell Labs, which became one of the most widely used programming languages of all time.

Java

A general-purpose computer programming language that is concurrent, class-based, object-oriented, and is designed to run on any platform

Internet

A global system of interconnected computer networks that use the standard Internet protocol suite (TCP/IP) to link several billion devices

undirected graph

A graph that contains edges between vertices with no specific direction associated with any edge.

network

A group of two or more computer systems linked together. There are many types including LANs, MANs, and WANs and the Internet.

back door

A hidden method for bypassing normal computer authentication systems, primarily used to gain unauthorized access to a computer system

Polymorphism

A key element of object oriented programming, where methods can be overloaded or overridden as needed and desired.

low level language

A language easily understood and executed by a computer, like machine language, assembly, or bytecode

linear run time

A level of algorithm complexity which requires the number of steps directly proportional to the size of the data structure in order to process, such as outputting all of the elements of an array, or performing a linear search on an array of values.

quadratic run time

A level of complexity of an algorithm that is characterized by a nested loop process, taking roughly N2 steps to complete, so for an array size of 10 items, it would take roughly 100 steps to complete the process..

logarithmic run time

A level of complexity which requires the number of steps roughly equivalent to the log value (usually base 2) of the size of the data set. For example, for a set of 1000 values, the log base 2 value of 100 is about 10, which means it would take roughly 10 steps for an algorithm to perform its task on 1000 items in a data structure. The most common log based algorithm is the binary search.

truth table

A logic table in Boolean algebra that evaluates the parts of a logical expression and reaches a final conclusion for each of the original input values.

conjuction

A logical expression resulting in true or false that combines two boolean expressions into one using the AND operation, which requires both expressions to be TRUE for an overall TRUE result.

for loop

A loop structure in various programming languages where the start, check, and step are designated in parentheses immediately after the for

Nested For loop

A loop structure inside of another loop structure, as would be found in an insertion sort, bubble sort, or selection sort, or in the processing of a two dimensional array structure.

JPEG

A lossy compression technique for color images. Common to photographs and websites. Used to create high resolution, printable images

object code

A low-level language easily understood and executed by the computer, the result of a translation process using a compiler or interpreter.

Absorption law

In Boolean Algebra, the identity where a "smaller" term that also exists in "larger" terms "absorbs" the larger terms

identity law

In Boolean logic, these laws return the same value as the expression. For example, if A is a boolean expression, A or false is still A, as well as A and 1. This similar to mathematics where any value multiplied by 1 remains the same, and likewise any value added to zero remains the same.

disjunction

In Boolean logic, this word is associated with the OR operator.

Java JRE vs. Java JDK

It is basically the Java Virtual Machine where your Java programs run on. It also includes browser plugins for Applet execution. JDK: It's the full featured Software Development Kit for Java, including JRE, and the compilers and tools (like JavaDoc, and Java Debugger) to create and compile programs.

Access modifier

Keywords in object-oriented languages that set the accessibility of classes, methods, and other members. The two most common are private and public, where private limits access only to members of the class, and public grants open access.

primary storage

Main storage or memory, is the area in a computer in which data is stored for quick access by the computer's processor. The terms random access memory (RAM) and memory are often as synonyms for primary or main storage.

platform-specific

the program only works on the specific platform (operating system) for which it was defined.

platform-independent

the same program works on any platform (operating system) without needing any modification.

HTML

the standard markup language used to create web pages. It is written in the form of elements consisting of tags enclosed in angle brackets (like <b> ).

Modem

device that converts digital signals to analog signals to send over wires

RIP

one of the most used routing protocols used in network routing configurations.

index value

A value indicating the position of an element inside an array data structure

AI

Intelligence exhibited by machines or software

secondary storage

Storage other than primary storage (RAM), such as a hard drive, floppy drive, or flash drive.

Ternary operators

The ?: operator in some languages is a shortcut way of doing an if else situation, with the combined advantage of immediately assigning or outputting the result. For example, to say if(x<5) num = 6; else num = 7;, you could say num = x<5?6:7;

involution law

The Boolean algebra law that is much like the double negative in mathematics, where the value of the expression NOT NOT true is simply true, and NOT NOT false is false.

Algorithm

procedure or formula for solving a problem and finding an exact example, as opposed to a heuristic

Unchecked exceptions

represent defects in the program (bugs) - often invalid arguments passed to a non-private method.

Arithmetic operator

+ for plus, - for minus, * for multiplication, / for division, and % for modulus

queue

A FIFO (first in first out) data structure, similar to a stack, but where the first element added to the queue will be the first one to be removed, and where a new element is added to the back of the queue, much like a waiting line.

AND

A binary Boolean operation that results in true only if both boolean values are true, otherwise the result is false

GIF

A bitmap image format that was introduced by CompuServe in 1987 and has since come into widespread usage on the World Wide Web due to its wide support and portability.

Scanner

A class in Java that facilitates input from the keyboard or files.

Child class

A class in object oriented programming that inherits the characteristics of a parent class.

Parent class

A class is the super class in a class hierarchy inheritance system. In Java, the Object class is the ultimate class.

Subclass

A class whose definition inherits the characteristics of another class, called the parent class or super class.

data type

A classification identifying one of various types of data, such as real, integer or Boolean, that determines the possible values for that type

database

A collection of information that is organized so that it can easily be accessed, managed, and updated

method library

A collection of predefined methods that can be used to build up a program.

Array of arrays

A collection of similar arrays in a program, such as an array and array of integers

Array

A collection of similar data items in a program, such as a collection of integers

COBOL

A compiled English-like computer programming language designed for business use

random number generator

A computational or physical device designed to generate a sequence of numbers or symbols that lack any pattern

binary file

A computer file that is NOT a text file, which contains various types of information the computer understands, such as images, sounds, compressed versions of other files, or metadata for particular types of documents

input device

A computer hardware device used to enter data into a program or an application, such as a keyboard, mouse, or secondary storage device, such as a hard drive, floppy drive, or flash drive.

decrement

A computer operation that decreases the value of a variable by 1, such as x--

increment

A computer operation that increases the value of a variable by 1, such as x++

compiler

A computer program (or set of programs) that transforms source code written in a programming language (the source language) into another computer language (the target language, often having a binary form known as object code). The most common reason for converting a source code is to create an executable program.

assembler

A computer program which translates assembly language to an object file or machine language format

late binding

A computer programming mechanism in which the method being called upon an object is looked up by name at runtime

peripheral device

A computing device that is connected to the main unit, such as a monitor, keyboard or mouse.

contradiction

A concept in Boolean logic that means "opposite of", where if something is true, the contradiction of it is false, and vice versa.

switch statements (case, switch, and default)

A conditional control structure in programming that functions as a multi-step if else statement, where several cases are stated and examined during execution to seek a match, and then a command is executed when a match is found.

virus definitions

A data file used to update a detection program so it can recognize new viruses as they are discovered and documented

non-linear data structure

A data structure that does not occupy contiguous memory, such as a linked list, graph, or tree.

circular queue

A data structure with a fixed memory size that rotates back to the front of the array as necessary in processing push and pop sequences of data

float

A data type in programming that contains a floating point value, more commonly referred to as a decimal value, like 1.5 or 3.14

character (char)

A data type in programming that contains a symbol, letter, or digit, like 'A', 'b', '5', or '#'

double

A data type in some languages that is designed to contain floating-point numbers, generally using twice as much memory as a float data type. In Java, a double uses 64 bits of memory compared to a float that uses 32 bits.

long

A data type in some programming languages that contains an integer value, but uses twice as much memory to store it, thus increasing the range limits of the values it can store. A long in Java uses 64 bits of memory storage, as opposed to an int that uses 32 bits.

int

A data type in various languages (short for integer) which can contain an integer

floating point value

A decimal value, such as 1.5 or 3.14.

output device

A device used in computing to display or store information, such as a monitor, printer, or secondary storage device, like a flash drive.

black box

A device, system or object in computing which can be viewed in terms of its inputs and outputs, without requiring any knowledge of its internal workings

assembly language

A low-level programming language (difficult for humans, easy for machines) that uses mnemonic opcodes, such as mov, sto, and load, to interact directly with a computer's CPU and registers, used by expert programmers to produce highly efficient and fast programs

XML

A markup language that defines a set of rules for encoding documents in a format which is both human-readable and machine-readable.

Nested class

A member of an enclosing class. Non-static nested classes (inner classes) have access to other members of the enclosing class, even if they are declared private.

variable

A memory location in programming that is changeable during the execution of the program, unlike a constant which cannot be changed.

Constants

A memory location in programming that is unchangeable during the execution of the program once it has been given a value, unlike a variable which can be changed.

modifier

A method (also called a mutator) that belongs to an object that allows public access to the private data of that object to make changes to that data, most often starting with the prefix "set...", like setName, or setSize.

Constructor

A method in a class definition whose sole responsibility is to construct a new object. Classes can have many versions of software, a key feature of polymorphism.

recursion

A method where the solution to a problem depends on solutions to smaller instances of the same problem

debugging

A methodical process of finding and reducing defects, or errors in a computer program or a piece of electronic hardware

parallel processing

A mode of computer operation in which a process is split into parts that execute simultaneously on different processors attached to the same computer.

host

A network device that is a computer or other device connected to a computer network

bus topology

A network topology in which nodes are connected in a daisy chain

ring topology

A network topology where all devices are connected in a circular fashion.

router

A networking device that forwards data packets between computer networks

hub

A networking device that is the center of a star topology, where it is the center of the star and all devices connect to it, receiving network traffic from it.

GUI

A newer style of program interface (as opposed to command line) that features dialog boxes, clicking features such as buttons, boxes, and radial buttons, commonly seen in most modern programs.

parent node

A node in tree structure including the root which has one or more child nodes connected to it.

social engineering

A non-technical method of intrusion that relies on human interaction and often involves tricking people into breaking normal security procedures.

Big O notation

A notation system used to classify algorithms (see algorithm analysis). The primary notation levels are: O(1), O(log N), O(N), O(N log N), and O(N^2)

Backus Naur notation

A notation technique for context-free grammars, often used to describe the syntax of languages used in computing.

random seed

A number (or vector) used to initialize a pseudorandom number generator.

imperative programming

A paradigm in programming that is often referred to as procedural, where a developer writes code that describes in exacting detail the steps that the computer must take to accomplish the goal. Most of the mainstream programming languages, such as C++, Java, and Python, are examples.

printer

A peripheral device in a computer system responsible for producing a printed output.

while loop

A pretest loop in programming that checks a boolean condition before performing the action of the loop, and continues iterating while the condition is true.

function

A procedure or method that performs a calculation and returns a value of some sort.

Method

A process in Java that can be either a procedure (void method) that performs an action of some sort, or a function (return method) that returns a calculated value.

Class method

A process in a class definition that acts on the data that belongs to that class

casting

A process in computer programming where the data type of a variable is temporarily transformed into a different data type, such as casting a decimal value as an integer

loop

A process in programming that repeats a process a certain number of times.

pseudorandom

A process is a process that appears to be random but is not truly random.

Traverse

A process of visiting all of the elements in a data structure in a certain order, such as an array, graph, or tree.

pop

A process used in stack and queue processing where a copy of the top or front value is acquired, and then removed from the stack or queue.

peek

A process used in stack and queue processing where a copy of the top or front value is acquired, without removing that item, as opposed to a pop function where the item is removed from the stack or queue.

push

A process used in stack and queue processing where a new value is inserted onto the top of the stack or into the back of the queue.

robust

A process, system, organization, etc. able to withstand or overcome adverse conditions.

rootkit

A program (or set of programs) used to give unfettered administrative access to a machine. These programs attempt to hide the fact that a system's security has been compromised and usually provide a backdoor.

incremental design

A program design methodology that allows the system developer to define the system software in convenient stages.

linear data structure

A programming data structure that occupies contiguous memory, such as an array of values.

object

A programming entity that encapsulates data and related methods.

C++

A programming language also developed at AT&T Bell Labs in the late 70s by Bjarne Stroustrup, derived from C, with added object oriented features.

object oriented

A programming language model organized around objects rather than "actions" and data rather than logic.

high level language

A programming language using words and commands easy for humans to understand and organize, but which must be translated into a low-level language like machine language or object code for the computer to understand and execute.

procedure

A programming module that performs a task of some sort, like outputting the contents of a data structure, or performing a sort on an array.

call (method, procedure, function)

A programming statement used to execute a previously defined method, function, or procedure, often sending outside information into the process using parameters

break

A programming term that ends the process in a control structure, such as a loop or switch case statement

Non-linear recursion

A recursive process that includes multiple recursive calls inside of a method, such as tree traversal methods that first traverse one branch of the tree from that node, and then the other branch.

continue

A reserved word in some languages (including Java) placed into an iterative structure, such as a loop, that interrupts the normal flow of the loop and jumps back to the next iteration, bypassing any statements listed afterwards.

spiral design

A risk-driven process model generator for software projects. Based on the unique risk patterns of a given project, the spiral model guides a team to adopt elements of one or more process models, such as incremental, waterfall, or evolutionary prototyping.

string

A row of characters combined together to make a word, sentence, or other text based value.

flash drive

A secondary storage device that plugs into the USB port of a computer.

Code block

A section of code in a computer program which is grouped together.

LAN

A section of network, local to a room, house, building, small campus, or even a metropolitan area (MAN), connected by some protocol, most commonly Ethernet, either via wired connections, fiber, or wireless.

transistor

A semiconductor device used to amplify and switch electronic signals and electrical power

waterfall design

A sequential design process, used in software development processes, in which progress is seen as flowing steadily downwards through the phases of conception, initiation, analysis, design, construction, testing, production/implementation and maintenance.

system software

A set of files that contains the software that controls all of the functions of the computers, such as Windows, Linus, Unix, or Mac.

expression

A set of operands and operations that produce a mathematics based or logic based result. Contenation, or joining of strings, is also considered an expression.

Error

A situation in a program that indicates a flaw in the source code, either syntax-based (punctuation or grammar), run-time (occurs during execution, such as file not found, or division by zero), or logic based where the program runs but does not produce the desired results.

cache

A small area of fast memory located on the mother board of a computer,used by the central processing unit

browser

A software application used to explore web pages on the World Wide Web

modular programming

A software design technique that emphasizes separating the functionality of a program into independent, interchangeable modules, such that each contains everything necessary to execute only one aspect of the desired functionality.

application

A software program that performs a particular task, such as word processing, spreadsheet, etc.

search engine

A software system that is designed to search for information on the World Wide Web

Selection Sort

A sorting routine that uses a nested loop process to systematically select the best value among the unsorted elements of the array for the next position in the array, starting with position zero all the way to the end.

Escape sequences

A special character sequence included in a string that indicates a special event, such as a line feed (\n) or tab(\t), or even producing a special control characters like the \ or " character, normally used for other functions.

for each loop

A special loop in Java that traverses from start to finish an array or Java collection data structure, such as an ArrayList or Linked List, just to name a couple.

reserved word

A special word in a programming language that has a reserved meaning and cannot be used in any other way.

conditional statement

A statement in programming that makes a decision using if or if-else situations by evaluating a boolean condition.

procedure box

A symbol used in flowcharting that represents a process or event that occurs within the flow of the program.

operator

A symbol used in mathematical and logical expressions, such as the plus (+) or division (/) sign.

WWW

A system of Internet servers that support specially formatted documents. The documents are formatted in a markup language called HTML.

ASCII

A system of characters used by computers as a standard for all the letters, digits, and various characters in a language, with values associated for each characters, such as 65 for 'A', 97 for 'a', and 48 for the digit '0'

phishing

A tactic used by internet attackers using fake emails or websites, appearing to come from a known and trustworthy source, in an attempt to gather personal or financial information from the recipients.

Java packages

A technique for organizing Java classes into namespaces, providing modular programming in Java

boolean

A term in the study of logic and programming meaning a true or false value, named after a 19th century English mathematician, who helped developed this type Algebra as a new branch of mathematics

code

A term that refers to the set of instructions found in a computer program.

programming style

A term used to describe the effort a programmer should take to make source code easy to read and easy to understand. Good organization of the code and meaningful variable names help readability, and liberal use of comments can help the reader understand what the program does and why.

Turing test

A test of a machine's ability to exhibit intelligent behavior equivalent to, or indistinguishable from, that of a human.

sequential file

A text file where information is stored in consecutive order, as opposed to a random-access file.

source code

A text listing of commands in a high level programming language to be compiled, interpreted or assembled into an executable computer program.

Von Neumann architecture

A type of architecture is a computer architecture commonly used in most computers, based on that described in 1945 consisting of RAM connected to a CPU and ALU (Arithmetic Logic Unit), with input and output processes.

Huffman encoding

A type of compression algorithm used in programming.

multicore processor

A type of computer architecture where a single physical processor contains the core logic of two or more processors.

Checked exceptions

A type of exception (execution error) that a compiler will check for during the compile process, such as the possibility of a file input error, where the code must explicitly indicate how this possible exception will be handled, either by using a "throws" statement, or by using a "try catch" block.

repeat until loop

A type of loop in some languages that is a post test loop, similar in structure to a do while loop, but terminates when the check condition is true, unlike the do while which terminates when the check is false.

scareware

A type of malware designed to trick victims into purchasing and downloading useless and potentially dangerous software. By using legitimate-looking notifications showing a large number of viruses or infected files, users are scared into purchasing software to fix the problems.

virus

A type of malware that propagates by inserting a copy of itself into another program. Almost all are attached to an executable file, which means they will not be active or be able to spread until a user runs or opens the host file or program. They spread when the software or document they are attached to is transferred from one computer to another.

pointer

A type of variable which refers to, or contains the memory address of, an object located elsewhere in memory, as opposed to a primitive variable which actually contains the value directly.

MAC address

A unique identifier assigned to network devices for communications on the physical network segment, similar to a social security number that belongs to a person.

IP address

A unique string of numbers, usually expressed in dotted decimal notation (such as 192.168.1.1), that identifies each computer using the Internet Protocol to communicate over a network.

byte

A unit of digital information that most commonly consists of 8 bits. In Java, a byte is an integer data type with a numerical range from -128 to 127.

bytecode

A universally portable software file compiled from source code that is then translated into machine language by a software interpreter. Java works this way, where a .java file is compiled into a .class file, which contains bytecode, and then is translated by whatever device executes that file.

default

A value which is automatically assigned, like zero for numeric variables, null for objects, false for boolean. It is also a command in a switch case statement that serves as the option at the end of the statement which is executed when none of the other cases matched.

Static variable

A variable in a class definition that is independent of any object of the class, but that can be used by all of the objects.

global variable

A variable in a program that is declared outside the scope of any method and is visible by every method or process within the class.

parameter

A variable located inside the parentheses of a method call or method header.

Class variable

A variable that belongs to the class, and is not specific to any particular object, indicated by the word "static", of which only a single copy exists, regardless of how many instances of the class exist

local variable

A variable that can be seen only within the confines of its block of code, such as in a method or in a loop, as opposed to a global variable.

firewall

A virtual wall in protection software that prevents certain types of network traffic from entering a network, usually by the use of port numbers, an OSI level 4 feature.

bomb

A virus carrying a built-in time delay so that the virus becomes active after a specific "incubation" time

flowchart

A visual organizer system in programming used to indicate the flow of a program, using procedure blocks, decision diamonds and arrows.

integer

A whole number value, positive or negative

tree topology

A widely used abstract data type that simulates a hierarchical structure,

binary

A word that is used to describe the base 2 number system, as well as a type of operator that performs a calculation on two operands, such as + or -

MPEG

A working group of authorities that was formed by ISO and IEC to set standards for audio and video compression and transmission. The file is typically one that contains a audio/video feature of some sort.

constant run time

An algorithm is said to be constant time (also written as O(1) time) the process does not depend on the size of the input, such as accessing any value of a contiguous array, a process that only involves one step, regardless of the size of the array.

sort

An algorithm used to arrange elements of an array into natural order, such as numeric or alphabetical.

HTTP

An application protocol for distributed, collaborative, hypermedia information systems. It is the foundation of data communication for the World Wide Web.

IDE

An application used in programming that combines the source code editing process, compiling and program execution process into one easy-to-use application. Examples include Eclipse, NetBeans, JCreator, and BlueJ.

functional programming

An approach to problem solving that uses a form of declarative programming. Languages that fit this description include Scheme, Haskell, LISP, Racket, and F#.

Two-dimensional array

An assortment of values characterized by rows and columns, arranged in a grid format.

spreadsheet

An electronic document in which data is arranged in the rows and columns of a grid and can be manipulated and used in calculations.

Syntax error

An error associated with punctuation, spelling or grammar in a computer program.

Logic error

An error in programming is one where the program executes properly, but does not produce the desired and intended outcome.

Exception

An error in programming that is "thrown" when something bad happens in a program, usually during runtime. Generally there are two types: checked and unchecked, checked meaning they are checked during compile time, and unchecked when they are thrown during runtime.

lexical error

An error in programming that is characterized by a misspelling of a word, or reserved words listed out of order.

Runtime error

An error that occurs during the execution of a program.

bug

An error, flaw, failure, or fault in a computer program or system that causes it to produce an incorrect or unexpected result, sometimes called a logic error.

Visual Basic

An event-driven programming language and integrated development environment (IDE) from Microsoft, first released in 1991, to be relatively easy to learn and use to create GUI based programs.

Try/catch block

An exception handling process in programming where possible error generating situations are smoothly handled during execution, with the situation is enclosed inside the one section, and one or more sections are built in to handle the possible errors that may occur. This is a key feature in making very large programs robust and error free.

Pascal

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.

universal serial bus

An industry standard connection system developed in the mid-1990s that defines the cables, connectors and communications protocols used in a bus for connection, communication, and power supply between computers and electronic devices.

pseudocode

An informal high-level description of the operating principle of a computer program or other algorithm.

Short

An integer data type in some programming languages that uses half as much memory storage as an int. In Java, a short uses 16 bits of storage.

Command-line argument

An item of information provided to a program when it is started from a command line. In Java, input provided at execution is automatically received the String [] args array indicated in the main method parameter list.

String object

An object in programming that references a set of characters.

floppy drive

An old style secondary memory storage technology that indicates either 3.5 inch or the even older 5.25 inch disks that were flexible.

unary

An operator in mathematics or in logic which works on only one operand, such as the negative, positive, or complement operators

formatted

An output statement where special commands or expressions are used to control the output, such as escaped sequences, or the use of formating specifiers in a printf type statement, such as System.out.printf("%s %4.2f\n","Hello",3.14);

integrated circuit

Another name for a chip is a small electronic device made out of a semiconductor material. The main CPU for a computing device is an integrated circuit

adware

Any software package that automatically renders advertisements in order to generate revenue for its author

aggregate data types

Any type of data that can be referenced as a single entity, and yet consists of more than one piece of data, like strings, arrays, classes, and other complex structures

shift operators

Bitwise operators in programming which shift the binary bits of a value either to the left or to the right.

antivirus software

Computer software used to detect, remove, and prevent malicious software, such as viruses, Trojans, malware, worms, etc.

ALU

Digital electronic circuit that performs arithmetic and bitwise logical operations on integer binary numbers. It is a fundamental building block of the central processing unit (CPU) found in many computers.

DSL

Digital subscriber line is way to accelerate digital access over a phone line

Trojan

Disguised as legitimate software, this code is a harmful piece of software that tricks users into loading and executing it on their systems. Unlike viruses and worms they do not reproduce by infecting files, nor do they self-replicate.

module

Each of a set of standardized parts, independent units, or previously defined functions that can be used to construct a more complex program.

ENIAC

Electronic Numerical Integrator And Computer, the first electronic general-purpose computer, designed and developed in 1946 at the University of Pennsylvania primarily used to calculate artillery firing tables for the United States Army's Ballistic Research Laboratory,but also included a study of the feasibility of the hydrogen bomb

EULA

End user license agreement, requires agreement of user to terms of service

DeMorgan's law

In Boolean logic, two laws named after a 19th-century British mathematician, state the result when and AND or OR expression is negated. For example, NOT(A and B) becomes NOT A or NOT B, and NOT(A or B) becomes NOT A and NOT B.

import statements

In Java, import statements bring into the compile process certain packages that contain tools and methods to be used in the program. For example, to perform file input the java.io and java.util packages must be imported into a program.

node

In a linked list, tree, or similar graph-based structure, a node is an object linked to other objects, representing some entity in that data structure.

Driver class

In a programming project, this is the class that contains the method where program execution begins, such as the main method in Java.

zombie

In computer science, a computer connected to the Internet that has been compromised by a hacker, computer virus or trojan horse and can be used to perform malicious tasks of one sort or another under remote direction. Botnets of these computers are often used to spread e-mail spam and launch denial-of-service attacks.

stack

In computer science, a stack or LIFO (last in, first out) is an abstract data type that serves as a collection of elements, with two principal operations: push, which adds an element to the collection, and pop, which removes the last element that was added.

linker

In computer science, a type of editor where a computer 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.

concurrency

In computer science, this is a property of systems in which several processes are executing at the same time, often associated with multi-processor systems.

memory address

In computing, a data concept used at various levels by software and hardware to access the computer's primary storage memory. It is a fixed-length sequences of digits conventionally displayed and manipulated as unsigned integers.

distributive law

In mathematics, the distributive law takes an expression like 5(x + 7) and distributes the outside term across the two inside terms, producing 5x + 35. The same law applies in Boolean logic, with AND distributing over OR, but logic also allows OR to be distributed over AND.

this Reference

In object oriented programming, the reserved word this indicates the current object, and is usually implied, but sometimes is necessary to state explicitly for purposes of clarity in the source code.

Instantiate

In object oriented programming, this is the process of bringing into existence an object defined by a class, in Java initiated by the term "new", which calls a constructor appropriate for that object.

Abstraction

In object-oriented programming, "information hiding" is a term associated with encapsulation, one of three central principles (along with polymorphism and inheritance). A programmer can hide all but the relevant data about an object in order to reduce complexity and increase efficiency.

composition

In object-oriented programming, this is the process of combining simpler data types into more complex data types. For example in defining a Car class, it would might mad up of a BodyType class, an Engine class, and a TransmissionType class, among many other possible items.

Conventions

In programming, an agreed upon style of writing code by using indentation, capitalization practices, and use of meaningful identifier names to improve the readability of the code.

Hierarchy

In programming, this indicates the levels and structure of abstraction that indicate the overall structure of a program or class design, with different levels indicating various processes or interfaces are known, but the implementation may be hidden.

interface

In programming, this is an abstract class with prefined methods, but with no implementations. The most commonly used in programming is the Mouse interface, which consists of all the various Mouse clicking and dragging functions, which can be implemented in various ways by the programmer.

Immutable

In programming, this object's current value cannot be changed or altered in its current memory location. A String object in Java are examples, but a primitive value is not, and can be changed in its current memory location.

absolute reference

In spreadsheets, the use of the $ to indicate a static cell in a formula, like $A1, A$1, or $A$1

order of magnitude

In the analysis process for algorithms, the order of magnitude of an algorithm is roughly the number of steps, or amount of memory it takes in order for the algorithm to execute, most often expressed using the Big O notation system, using O(1), O(N), and O(N2) as the primary levels of complexity.

dynamic binding

In the compile process, certain binding issues can happen "early", but some can only happen during the actual program execution, which are "late" binding. For example, the compiler can detect whether or not an assignment value for a primitive is valid, such as assigning proper values to double variable, but certain Object based assignments may not be, and can only be decided during run time, which is called dynamic or late binding.

number bases

Mathematical systems used to express values using a certain number of symbols, such as base ten that uses the digits 0-9, base 2 using only 0 and 1, base 8 using 0-7, and base 16 using 0-9 and A-F.

virtual memory

Memory that exists in secondary storage that is used in conjunction with primary memory (RAM) to help with program execution.

Accessor method

Method in a Java class that allows and controls access to private data of objects

Static method

Methods that belong to all objects in a class and can be called independent of an object instance.

String methods

Methods that belong to the String class that act on the string, such as length(), substring(), indexOf(), charAt(), etc.

meaningful identifiers

Names used in programming for classes, methods, variables, and constants that help describe the general purpose and function associated with that item.

prefix

Often called "Polish notation", this is an expression system where by operators precede the operands. An example of a prefix expressions is + 3 * 4 5, which is equivalent to 3 + 4 * 5, the infix version of the expression.

postfix

Often called "reverse Polish notation", this is an expression system where by operators follow the operands, and is one used by some engineering calculators, such as some made by Hewlett Packard and often used in calculator competitions, noted for their ease and speed of use. An example of a postfix expressions is 3 4 5 * +, which is equivalent to 3 + 4 * 5, the infix version of the expression.

FORTRAN

One of the original high level languages, short for Formula Translation, created by John Backus to make programming easier for math and science applications.

inheritance

One of the three pillars of object oriented programming that allows for classes to be defined based on previously defined and developed classes, inheriting all of the characteristics of the inherited class, and then expanding on those features.

Encapsulation

One of the three primary aspects of object oriented programming that incorporates related data items and methods into a class definition, including instance variables, constructors, accessor and modifer methods.

Recursive case

One of two situations in a recursive method, the other being the base case, where another method call is made, moving closer and closer to the base case, which terminates the recursive process and unstacks all previously called methods, until a final value is achieved.

shortcut operators

Operators that combine the operation and assignment process into one operation, such as +=, -=, *= or /=.

postcondition

Part of the documentation process in programming, this is often listed in describing the end result expected from a method or function in the program.

precondition

Part of the documentation process in programming, this is often listed in describing the expected state prior to the execution of a method or function in the program, in order for that method to properly execute. For example, the precondition for a binary search is the list provided is in natural ascending order.

.png

Portable network graphics: alternative to .gif for web pages

RAM

Random Access Memory - the type of primary memory that is used by a computer in which to run programs and perform system operations.

ROM

Read Only Memory - memory that is hard-wired and used for system functions, very difficult if not impossible to change.

Single-dimensional array

See Linear data structure

Sequential search

See Linear search

OS

See Operating System

early binding

See dynamic binding

Mutator method

See modifier method

comments

Single lines or blocks of lines intended for documentation inside a program that describe a section of code and is not "seen" by the compiler

bot

Software that automate tasks and provide information or services that would otherwise be conducted by a human being

spyware

Software that enables a user to obtain covert information about another's computer activities by secretly transmitting data from their hard drive.

worm

Software that is similar to viruses in that they replicate functional copies of themselves, but are standalone software that do not require a host program to propagate. To spread, they exploit a vulnerability on the target system or use social engineering to trick users into executing them.

operating system

Software that manages computer hardware and software resources and provides common services for computer programs.

microprocessor

Sometimes called a logic chip, this is computer processor on a chip contains all, or most of, the central processing unit (CPU) functions and is the "engine" that goes into motion when you turn your computer on.

Declaration

Specifies properties of an identifier of a function, procedure, method, variable, constant, or class, but can also be used for other entities such as enumerations and type definitions.

if statements

Statements in programming that check to see if a Boolean expression is true, and executes a "then" statement if so, otherwise does nothing. These are often called "one-way" conditional statements.

If-else statements

Statements in programming that check to see if a Boolean expression is true, and executes a "then" statement if so, otherwise executes an "else" statement if the condition is false. These are often called "two-way" conditional statements.

Harvard Mark I

The IBM Automatic Sequence Controlled Calculator (ASCC), was a general purpose electro-mechanical computer that was used in the war effort during the last part of World War II.

Public access modifier

The Java access modifier public means that all code can access the class, field, constructor or method, regardless of where the accessing code is located.

final

The Java reserved word that indicates that a memory location or class definition is permanent once assigned.

new

The Java reserved word that instantiates an object, such as String name = new String ("John");

bit

The abbreviation for "binary digit", used to designate a single state of a computer value or signal, often notated as 0 or 1, false or true, off or on, low voltage or high voltage, etc.

topology

The arrangement of the various elements (links, nodes, etc.) of a computer network

sequential processing

The basic control structure in programming where commands are executed one after another, in the order in which they are listed.

XOR (exclusively OR)

The binary Boolean operation that results in true if only one of the two operands is true, with the other being false.

OR

The binary operation in Boolean logic that results in a true value if either or both operands are true.

Superclass

The class whose characteristics are inherited by another class that inherits it, called the sub class

executable code

The code that is a result of the compile process translated from source code.

"Is-a" relationship

The concept of inheritance in OOP, where one class is derived from another class. For instance, a Student class is derived from a Person class, therefore a Student "is a" Person.

Class

The definition of an object in OOP, describing the type of data owned by the object, as well as methods that act on that data.

Java class

The description or blueprint for a Java object, and typically contains instance variable declarations, constructors, and various methods that are necessary to use the object.

fair use

The doctrine that permits limited use of copyrighted material without acquiring permission from the rights holders

Java API

The documentation that describes the functions and characteristics of the Java programming packages.

BMP

The file name extension for the bitmap image file format

hexadecimal

The general terms used to indicate the base 16 numbering system, featuring the digits 0-9 and letters A-F

machine language

The language directly understood and executed by a computer, consisting of pure 0s and 1s.

associative law

The law in mathematics and Boolean algebra that allows regrouping of parentheses to achieve the same result, such as (A + B) + C = A + (B + C)

negation

The logical process of reversing the true or false state of an expression, using the NOT operation, also called logical complement, opposite of, or contradiction

CPU

The main integrated circuit on the motherboard of a computer that is responsible for processing commands and data.

Finalizers

The method in Java that belongs to all classes (originally the Object class) whose sole responsibility is garbage collection, specifically when an object is no longer referred to (pointed to) by any reference. The memory allocated to that object is returned to working memory for reuse.

Object class

The name of the Java class that is the "mother" of all objects. All other Java class automatically inherit this class as the top-level parent class in the hierarchy. This class provides basic methods such as the toString, hashCode, and equals methods.

Lexicographical order

The natural order in which words are alphabetized.

complexity

The number of steps it takes to perform an algorithm in relation to the amount of data involved, or in terms of how much memory is required during the processing of the data. It is generally measured by the Order of Magnitude system, often called Big O.

Moore's law

The observation made in 1965 by the co-founder of Intel, that the number of transistors per square inch on integrated circuits had doubled every year since the integrated circuit was invented, and that this trend would continue for the foreseeable future.

NOT

The operation in Boolean logic that indicates negation, or "opposite of"

Assignment operator

The operator used in a programming language that gives a value to a variable or constant

Order of Operation

The order of precedence of all of the operators in a computational system, such as mathematics (PEMDAS) or logic (NAXO)

Big-Endian

The ordering or sequencing of bytes of a word of digital data in computer memory storage or during transmission. Words may be represented in big or little manner.

ARPANET

The original name for the Internet when it was developed by the US Department of Defense

ISA, Instruction Set Architecture

The part of the computer architecture related to programming, including the native data types, instructions, registers, addressing modes, memory architecture, interrupt and exception handling, and external I/O.

hardware

The physical devices in a computer system, such as the main unit, monitor, keyboard, printer, etc.

Overloading methods

The polymorphic feature of object oriented programming where constructors and methods are named the same but operate on different input parameters in order to perform the same task.

Overriding methods

The polymorphic feature of object oriented programming where methods inherited from parent classes, such as the toString method from the Object class, are redefined and customized to better fit the purpose of the current class.

Camel case

The practice of writing compound words or phrases such that each word or abbreviation begins with a capital letter

hard drive

The primary device in a computer that is used for secondary storage, such as the operating system and various application programs needed by the computer to function.

Exception handling

The process in programming of handling irregularities. In Java, this is most often done by using a try catch block.

iterative processing

The process in programming that uses loop based or recursive based control structures to repeat certain processes.

swap

The process in sort routines of exchanging two values in an array, using a temporary variable, taking three steps to execute.

parameter passing

The process in the source code of a program whereby data is passed from one section of the program to another, using method calls that send actual parameters and method definitions that receive the passed data using formal parameters.

Initialization

The process of assigning a beginning value to a variable or constant in a computer program.

troubleshooting

The process of debugging a program by detecting and correcting errors in syntax and logic

information hiding

The process of encapsulation and abstraction in object oriented programming that provides a programming interface to a process, but does not reveal the actual workings of the process. For example, how the systems of a car work is not necessary to know about to simply drive the car. You just need to know how to work the driving mechanisms, such as the pedals the steering column functions.

routing

The process of forwarding data packets between computer networks,

documentation

The process of including comments inside of a program that are non-executable, but help explain a section of code to help someone trying to learn about the program more quickly understand what it does.

construct

The process of instantiating (bringing into existence) an object based on a class definition.

Concatenation

The process of joining two strings of characters into a larger string of characters, an operation often indicate by the plus (+) sign.

Garbage collection

The process of recycling memory previously allocated to methods or objects. See finalizer.

Dynamic Method Dispatch

The process of selecting which implementation of a polymorphic operation (method or function) to call at run time.

Type casting

The process of temporarily forcing a variable of one type of data to behave like another one.

compiling

The process of transforming source code from a high-level programming language into object code, most typically machine language or bytecode in Java.

conditional processing

The process of using if and if-else type statements in a program to make a decision based on a boolean (true/false) condition.

wordprocessing

The production, storage, and manipulation of text on a computer

software

The programs and other operating information used by a computer.

FTP

The protocol used to transfer files across networks.

bandwidth

The rate of data transfer, bit rate or throughput, measured in bits per second (bit/s), most often expressed in megabits per second. A typical WAN connection from a home or business can range anywhere from 5 Mbps to 25 Mbps. Within a LAN, speeds can exceed 1000 Mbps, or 1 Gbps

Scope

The region of a program source within which it represents a certain thing.

super

The reserved word in programming that designates a method or data item that belongs to the parent class, or super class.

Static modifier

The reserved word in programming that indicates that a method or variable is a class method or variable, independent of any object instance.

syntax

The rules in a scripted language that control punctuation, spelling, and grammar, such as ending a statement with a semicolon, requiring matching braces or parenthese, and so on.

multitasking

The simultaneous execution of more than one program or task by a single computer processor.

client

The software on a node or machine that accesses a remote service on another server computer

octal

The term associated with the base 8 number system, which uses the digits 0-7 as symbols.

extends

The term in Java used to indicate that a class will inherit another class, used in the class header, such as class Student extends Person.

Private access modifier

The term used in Java that designates limited access to data or methods to only objects of that particular class.

Catch

The term used in a programming block used to trap and handle errors or exceptions as they occur during the execution of a program

children

The term used in trees to indicate a node that extends from another node, such as left child and right child in a binary tree

Base case

The terminating scenario or situation in recursive programming that does not use recursion to produce an answer

interpreting

The translation process in some programming languages which executes a program one line at a time, instead of compiling the entire program into one executable file.

infix

The type of expression notation where a binary operator is in between the two operands, requiring the use of parenthese to indicate operations outside the normal operator precedence, such as needing a subtraction operation to occur before a multiplication. See prefix and postfix.

Null

The value in a programming language that indicates "nothing", which is the default value that objects refer to when not referencing or pointing to an object.

decimal

There are two common meanings for this word. One describes a real number that has a whole part and a fractional part, like 3.14.

decimal

There are two common meanings for this word. The other is the general term for the base ten numbering system, as opposed to binary (base 2), octal (base 8) or hexadecimal (base 16)

Primitive data types

These are data types in programming that literally contain the values in memory, as opposed to objects which contain memory locations of the objects to which they refer.

star topology

This is a common topology in networking where a central device, such as a switch or a hub, to which all of the network devices are connected.

do while loop

This is a post test loop in programming where the action of the loop precedes the "check if true" expression, which decides whether or not the loop should continue. The primary difference between the post and pre test loop is that the post test loop will always execute at least once before termination, where the pretest loop does not.

idempotent law

This is a property in logic denoting the fact that the state of an expression is unchanged in value when operated on by itself. For example, in logic, the expression "true AND true" is true. Likewise, so is "false and false", resulting in false.

tautology

This is a situation in logical expressions where the result of the expression is always true, regardless of the original inputs of the expression. In a truth table, the final column will show all true values.

POP

This is an email protocol for storing emails

commutative law

This is the Law that says you can swap numbers around and still get the same answer when you add or multiply. It also works with AND, OR, and XOR logic operators

Default constructor

This is the constructor either supplied by the compiler where all instance variables received default values, or one defined explicitly in the class that receives no parameters and assigns beginning values for each instance variable.

formal parameter

This is the parameter that is listed in a method header that receives a value from a method or procedure call, and is only in scope during the execution of the method.

decision diamond

This is the shape used in flowcharts that indicates a decision made in a program where an input situation is presented and the result is either true or false.

server

This term refers to either the software that is the hardware on which shared software is located.

precision limits

This term refers to the limits to which numerical values can be stored in computer memory. For integers, the limits are the range of values that can be stored. For floating point values, the limits are the degree to which a very large or very small value can be accurately stored and expressed, beyond which precision errors begin to occur.

execute

To run a program.

.us

Top level domain for US based websites

.com

Top level domain for commercial websites

.edu

Top level domain for educational organizations

.gov

Top level domain for government websites

.mil

Top level domain for military websites

.org

Top level domain for non-porofit websites

.net

Top level domain for smaller websites

actual parameter

Value or variable used as a parameter in a method call.

Literals

Values in programming statements that are explicitly stated, such as number values or character based values, as opposed to variables. For example, in the output statement, System.out.println("Hello");, the string "Hello"

pass by reference

When a parameter is passed the memory location originally referred to by the actual parameter is passed to the formal parameter, such that any changes made to the object by the formal parameter also affect the original actual parameter.

pass by value

When a parameter is passed, any changes made to the formal parameter do NOT affect the actual parameter.

MAN

a LAN that spans the geograhic area occupied by a city or town, usually using fiber as a backbone.

TIFF

a computer file format for storing raster graphics images, popular among graphic artists, the publishing industry, and both amateur and professional photographers in general.

WAN

a computer network in which the computers connected may be far apart, separated by distances spanning half a mile to thousands of miles.

Unified Modeling Language (UML)

a general-purpose modeling language in the field of software engineering, which is designed to provide a standard way to visualize the design of a system.

program

a list of instructions that tell a computer what to do.

ISDN

a rapid stable means of transmitting data over telephone lines. Does not require a modem but an terminal

URL

a reference (an address) to a resource on the Internet. consisting of Protocol identifier and Resource name.

quick sort

an efficient sorting algorithm, serving as a systematic method for placing the elements of an array in order

SMTP

an email protocol that enables the transfer of email messages across the network.


Conjuntos de estudio relacionados

Principles of Biomedical Science Final Exam

View Set

Working with Young Children Chapter 5

View Set

philosophy: natural philosophers

View Set

Econ 103 Midterm Study Chapter 4

View Set

Accounting II- Midterm Study Guide

View Set

Relationships Between Quantities

View Set