Chapter 1: An Overview of Computers and Programming Languages, Part 2
Java Virtual Machine (JVM)
A hypothetical computer introduced by Java that uses bytecode and allows Java to be platform independent.
Structured design
A program methodology in which a problem is divided into smaller sub-problems and then analyzed and solved. The structured design approach is also known as top-down design, bottom-up design, step-wise refinement and modular programming.
Interpreter
A program that reads, translates each bytecode instruction into the machine language of your computer, and then executes it.
Source program
A program written in a high-level programming language.
Methods
A sequence of statements or instructions whose objective is to accomplish a task.
Integrated Development Environment (IDE)
A software package that facilitates programming and contains many programs that are useful in creating programs written in Java.
Object-oriented design (OOD)
A widely used programming methodology, in which program components called objects are identified and form the basis of the solution.
Top-down design
Also known as structured design which is a program methodology in which a problem is divided into smaller sub-problems and then analyzed and solved. Other names for the structured design approach is bottom-up design, step-wise refinement and modular programming.
Stepwise refinement
Also known as structured design which is a program methodology in which a problem is divided into smaller sub-problems and then analyzed and solved. Other names for the structured design approach is top-down design, bottom-up design and modular programming.
Modular programming
Also known as structured design which is a program methodology in which a problem is divided into smaller sub-problems and then analyzed and solved. Other names for the structured design approach is top-down design, bottom-up design, and step-wise refinement.
Bottom-up design
Also known as structured design which is a program methodology in which a problem is divided into smaller sub-problems and then analyzed and solved. Other names for the structured design approach is top-down design, step-wise refinement and modular programming.
Pseudocode
An "outline" of a program that could be translated into actual code.
Step 1 (Problem-Solving Process)
Analyzes and outline the problem and its solution requirements
Objects
Components of a program that combine data and operations on data into a single unit.
Step 2 (Problem-Solving Process)
Design an algorithm to solve the problem
Structured Programming
Dividing a problem into smaller sub-problems. Each sub-problem is then analyzed and a solution is obtained to solve the sub-problems. The solutions to all of the sub-problems are combined to solve the overall problem
Object Oriented Programming
Identifying components which form the basis of the solution and to determine how these objects interact with one another.
Step 4 (Analyzing the Problem)
If the problem is complex, divide the problem into subproblems and repeat Step 1 and 2 by analyzing each subproblem and understanding each subproblem's requirements. You also need to know how the subproblems relate to each other.
Step 3 (Analyzing the Problem)
If the program produces output, you should know how the results should be generated and formatted.
Step 3 (Problem-Solving Process)
Implement the algorithm in a programming language.
Class
In Java, the mechanism that allows you to combine data and operations on the data into a single unit.
IDE
Integrated Development Environment. Where you create/write code.
Loader
Loads an executable program into main memory
Object program
Machine language version of the high level language programs
Step 5 (Problem-Solving Process)
Maintain program by using and improving it, and modifying it if the problem domain changes
Library
Pre-written progams are here
Programming
Process of problem solving
Compilers
Program that translates instructions written in a high-level into the equivalent machine language
High-level languages
Programming languages that more closely resemble spoken languages.
Algorithms
Step-by-step problem solving process in which a solution is arrived at in a finite amount of time
Bytecode
The intermediate language that Java is translated into by the Java interpreter.
Address
The unique location of each cell in the main memory.
Step 1 (Analyzing the Problem)
Thoroughly understand the problem
Assembler
Translates the assembly languages instructions into machine language
Step 2 (Analyzing the Problem)
Understand the problem requirements. Requirements can include whether the program requires interaction with the user, manipulates data, produces output and what the output looks like. If the program manipulates data, the programmer must know what the data are and how they are represented. This is accomplished by looking at sample data.
Step 4 (Problem-Solving Process)
Verify that the algorithm works