Topic 4 - Programming

studied byStudied by 18 people
0.0(0)
Get a hint
Hint

Sub-procedures / Sub-Programs

1 / 27

28 Terms

1

Sub-procedures / Sub-Programs

When a problem is decomposed, you create smaller problems to solve. In programming, instead of having one function solve a whole problem, you can create smaller helper functions (sub-programs) to solve each of the smaller problems.

New cards
2

Identifier

Name of a variable, parameter, constant, user

New cards
3

Importance of sub-procedures

It helps create a modular approach to solving problems that are easier to debug and reason about.

New cards
4

Iteration

the process of repeating a series of instructions. (loop)

New cards
5

Conditional Statement

a statement that can be written in ifthen form and uses a boolean expression

New cards
6

Software Library

prewritten code, classes, procedures, etc that a programmer can use to add more functionality to his/her programs without having to rewrite the equivalent code.

New cards
7

Pre-Conditions

Assumptions that can be made and what must be true before the sub-procedure/function is called.

New cards
8

Post-Conditions

the effect a method has on its inputs (any unaffected/unlisted input should remain untouched), any generated exceptions, information about the return value, and effects on object state

New cards
9

Exceptions

an act or event that disrupts the anticipated flow of the program's execution

New cards
10

Concurrency

when two or more things happen at the same time. This is a term that is usually used with networking and/or multi-core processors. Different threads might make concurrent calls to websites or different processors.

New cards
11

Abstraction

Abstraction is the process of taking away or removing characteristics from something in order to reduce it to a set of essential characteristics.

Through the process of abstraction, a programmer hides all but the relevant data about an object in order to reduce complexity and increase efficiency.

The object or sub-program can then be called by name while preserving its functionality but hiding specific data/implementation.

New cards
12

Object-Oriented Programming

Programming that uses abstraction to represent real-world objects

New cards
13

Collection

A data structure that holds data and has methods used to iterate over that data

New cards
14

Object

an abstraction in code for a real-world object

New cards
15

Variable

a reference to a location in memory where data is stored

New cards
16

Constant

a variable that doesn't change

New cards
17

Operator

a character or characters that determine the action that is to be performed or considered

Arithmetic operators: +, -, \*, /, etc. \n Relational operators: <, > , >=, <=, ==. != \n Logical operators: &&, ||
New cards
18

Array

In java, it is a static data structure with predetermined capacity.

New cards
19

Sequential Search

Searching through objects in a collection one by one, in order

New cards
20

Binary Search

Looking for an item in an already sorted list by eliminating large portions of the data on each comparison

New cards
21

Efficiency

the amount of computer resources used by a program uses

New cards
22

Correctness

whether a program can perform specified success criteria without errors

New cards
23

Reliability

whether an algorithm can consistently maintain efficiency and correctness

New cards
24

Flexibility

the amount of effort required to modify an algorithm for other purposes

New cards
25

Fundamental Computer Operations

add, compare, retrieve and store

New cards
26

Compound Computer Operations

the combination of fundamental operations into a more complex solution

New cards
27

Features of Programming Languages

Semantics: the process a language follows when executing a program's syntax

Syntax: the keywords, operators and other valid constructs that make up a programming language.

New cards
28

Need for Programming Languages

Low level languages: used to perform operations on hardware, e.g. assembly language

High level languages: used to give users easy-to-understand abstractions, which are then compiled into assembly language. e.g. python, java, javascript, etc.

New cards

Explore top notes

note Note
studied byStudied by 19 people
... ago
5.0(1)
note Note
studied byStudied by 19 people
... ago
5.0(1)
note Note
studied byStudied by 14 people
... ago
5.0(1)
note Note
studied byStudied by 112 people
... ago
5.0(2)
note Note
studied byStudied by 20 people
... ago
5.0(1)
note Note
studied byStudied by 2 people
... ago
5.0(1)
note Note
studied byStudied by 20 people
... ago
5.0(1)
note Note
studied byStudied by 46 people
... ago
5.0(2)

Explore top flashcards

flashcards Flashcard (24)
studied byStudied by 5 people
... ago
5.0(1)
flashcards Flashcard (161)
studied byStudied by 7 people
... ago
5.0(1)
flashcards Flashcard (42)
studied byStudied by 9 people
... ago
5.0(1)
flashcards Flashcard (144)
studied byStudied by 3 people
... ago
5.0(1)
flashcards Flashcard (24)
studied byStudied by 7 people
... ago
5.0(1)
flashcards Flashcard (67)
studied byStudied by 2 people
... ago
5.0(1)
flashcards Flashcard (47)
studied byStudied by 5 people
... ago
5.0(1)
robot