2.2.1 - Programming Techniques Flashcards

Component 2

You may prefer our related Brainscape-certified flashcards:
1
Q

What is a variable?

A

Identifier/name of a memory location used to store data

Used to store a value which can change during execution

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

What are the global variables?

A

The variable can be accessed throughout the scope of the program (visible throughout a program)

Using passing by reference is an equivalent of a global variable.

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

What are the negatives of global variables?

A

Global variables mean that memory space is kept throughout the running of the program, not just the sub-program (which uses more space than local)

Make it difficult to track changes as it can be changed from any other part of the code.

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

What is a local variable?

A

Can only be accessed within the scope of the sub-program where it is created

A parameter that is passed into a subroutine becomes a local variable in the subroutine e.g. LoadLevel(Difficulty)

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

What is an IDE?

A

Integrated Development Environment (IDE) - A program used for developing programs, made from several components.

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

What tools are provided by an IDE to develop software?

A
  • Auto-complete – Will predict variable and built-in functions and finish off the word. Can avoid spelling mistakes and speed up development
  • Syntax highlighting (colour coding text) - Can distinguish between different features quickly to check code is correct
  • Auto Indent – Indents code automatically within structures to avoid errors
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What tools are provided by an IDE to debug software?

A
  • Error highlighting - Syntax errors highlight dynamically so they can be corrected before running the program (saving time)
  • Variable Watch window – Display the values of the variables during running of the program
  • Break points- Stop the program at set points to check the values of variables. Developer can add multiple breakpoints.
  • Error message list- Tells you where errors are and suggests corrections
  • Stepping - Executes program one line at a time to watch variable values and program pathways
  • Traces - Printouts of variable values for each statement execution
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the three programming constructs?

A

Sequence

Selection / Branching

Iteration

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

What is an example of a count controlled loop?

A

FOR Loop - Will run for a set number of predetermined times.

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

What is an example of a condition controlled loop?

A

WHILE / DO WHILE - Will run whilst a condition is true or false

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

What are parameters?

A

Parameters are the variables listed between the brackets, after the procedure/function name e.g.

They become local variables in the routines that they are passed to.

characterMovement(inputKey, characterx, charactery)

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

What does passing by value mean?

A

By Value (ByVal)
* Does not override the original data
* A local copy of the data is used
* Data is discarded when the subprogram exits

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

What does passing by reference mean?

A

By Reference (ByRef)
* Changes are made to the original data
* Memory location of data is sent
* Changes remain after the subprogram exits
* Uses less memory

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

What is a function?

A
  • A named block of code which always returns a value
  • Uses the keyword return
  • Assigns the returned value to a variable (e.g. y)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is a procedure?

A
  • A named block of code which does not return a value
  • Does not use the keyword return
  • Is called by writing its name but not assigning the result to a variable
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is an OO class?

A

A template for defining methods and attributes, which is used to instantiate objects.

17
Q

What is an OO object?

A

An instance of a class which is created using a constructor (new)

18
Q

What is a OO Method?

A

These are the actions that can be performed by an object; for example, get a position on a game board. Can get a value (getter) or set a value (setter)

19
Q

What is an OO attribute?

A

Value held by object / link to variable

Each object will have its own public or private attributes.

20
Q

What is encapsulation?

A
  • Attributes are set as private so they can only be accessed and changed via public methods
  • Uses public ‘set methods’ to modify the value of a private attribute
  • Uses public ‘get methods’ to retrieve the value of a private attribute
  • Prevents unexpected changed to attributes having unforeseen consequences.
21
Q

What is inheritance?

A
  • A child class has its own attributes and methods, but it also gets all attributes and methods from the parent class.
  • When a method name is the same in a parent and child, then the method in the parent/super class will be overridden by the local version in the child.
  • Uses the key word ‘inherits’ and ‘super’
22
Q

What is polymorphism?

A
  • Code can be written that is able to handle different objects in the same way, this reduces the amount of code.
  • Using methods with the same name in a subclass as in a parent class is called overriding, which is a type of polymorphism.
  • Overriding allows a sub-class to use its own method rather than that of the parent.
23
Q

What would the constructor look like for the following class?

A

public procedure new(thePlayerID, thePosition,theMoney)
playerID = thePlayerID
boardPosition = thePosition
money = theMoney
endprocedure

24
Q

What would the pseudocode be to instantiate an instance of this class?

A

ObjectName = new ClassName (attributes required)

e.g. - Ronaldo = new Player(“Ronaldo”, 10, 1000000)

25
Q

What is recursion? Why does it need a stopping condition?

A

Recursion is the process of a subroutine calling itself from within itself
A stopping condition must be included which when met means that the routine will stop calling itself and will start to ‘unwind‘

No stopping condition would cause a ‘Stack Overflow’ error by filling the memory uncontrollably.

26
Q

What are the pros and cons of iterative algorithms?

A
  • Has no limit to the number of times it may be called.
  • Only one copy of the variable is required. This means that less memory will be used
  • Uses a loop to repeat instructions. There is an end condition to the loop which decides when to stop looping
  • Takes more lines of code and can be harder to understand
27
Q

What are the pros and cons of recursive algorithms?

A
  • Too many calls may cause the program may run out of memory with a “Stack overflow” error
  • Each call produces a new local variable which mean more memory spaces needed
  • Uses a stopping condition in order to reach the end of the recursion
  • Recursion calls itself whereas iteration does not.
  • Uses less lines of code and produces a more elegant solution
28
Q

What would be the output if 10 was passed as a parameter into this function?

A

(1 + 2 + 3 + 6 + 7 + 10) = 29