Exam 3 Study Guide Flashcards

1
Q

Assembly Language

A

Processor or architecture specific programming language.

Low-level.
Generation 2 Langauge

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Programming Paradigm

A

A “style” or “way” of programming.

Not linked to a specific language.

Common Forms:

Structured
Procedural
Functional
Object-Oriented

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Structured Programming

A

Programming paradigm that emerged in popularity after GOTO statements were widely considered harmful.

Makes extensive use of control blocks like if-else, loops like while and for, and subroutines like functions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Grammar

A

The formal structure that defines the syntax of a programming language.

Sometimes called “Context-Free” Grammars.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Compiler

A

A computer program that transforms code written in one language to another language.

Typically from a higher level language to a lower level one, like machine language.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Interpreter

A

A computer program that directly executes instructions written in a programming or scripting language, without requiring them to have been compiled into a machine language program.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Encapsulation

A

The idea of bundling data and methods that work on that data within one unit, e.g., a class.

A fundamental concept of Object-Oriented Programming

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Data Structure

A

A collection of data points or variables, the relationships among them, and the functions or operations that can be applied to the data.

Popular Examples:

Array, Linked-List, Object

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Parameter

A

A variable to be passed to a function or method.

Defined in the function signature.

Example:

string MyFunction(var myParameter)

myParameter is a parameter.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Machine Independent

A

Code or software that is not dependent on the properties of a particular machine, and can therefore be used on any machine.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Global Variable

A

A variable accessible from anywhere within the program, thus it is considered “global”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Local Variable

A

A variable only accessible from within the scope in which it is defined or declared.

A common example would be a variable declared within a function.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Constructor

A

A special type of method that orchestrates the creation and initialization of an object.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Prototyping

A

The activity of creating incomplete versions of a software program being developed simulating only a few aspects of a program to get quick feedback.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Component Architecture

A

An architecture based on independent, replaceable, modular components to help to manage complexity and encourage re-use.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Design Phase

A

A phase of the software development lifecycle that occurs before actual programming.

In this phase you layout the overall structure of the project, create diagrams, etc.

17
Q

Structure Chart

A

A chart which shows the breakdown of a system to its lowest manageable levels.

Used in structured programming to arrange program modules into a tree. Each module is represented by a box, which contains the module’s name.

18
Q

Cohesion

A

The degree to which the elements inside a module belong together.

Basically, how much your classes\modules keep to themselves instead of touching other classes\modules.

19
Q

Sequence Diagram

A

A diagram showing the flow of a program in a step by step manner.

Typically uses UML symbols.

20
Q

Use Case Diagram

A

A specific type of sequence diagram that shows a particular set of choices or branches being made and the program flow that comes from those choices or branches.

21
Q

UML

A

Unified Modeling Language.

General-purpose modeling language intended to provide a standard way to visualize the design of a system.

22
Q

Global Data

A

Data items\variables available to all modules in the system.

23
Q

Modularity

A

The division of software into manageable units where each deals with only a sub-section or part of the software’s overall responsibility.

24
Q

Structured Walk-Through

A

It is an organized procedure for a group of peers to review and discuss the technical aspects of a program to find errors and to improve the quality of the product.

In Structured Walkthrough, the programmer explains the logic of the algorithm, while members of the programming team step through the program logic.

25
Q

Incremental Model

A

Method of software development where the product is designed, implemented and tested incrementally (a little more is added each time) until the product is finished.

26
Q

Top-Down

A

Software development design approach emphasizing planning and a complete understanding of the system. No coding can begin until a sufficient level of detail has been reached in the design.

Contrasts with Bottom-Up design where coding begins almost immediately, as soon as one component has been defined.

27
Q

Requirements Analysis

A

Part of the software engineering process to determine the needs of a project. Analyzing, documenting, validating and managing software or system requirements.

28
Q

Implementation

A

The phase of the software development process where actual coding happens. You create the software from the design and requirements documents