Programming Techniques Flashcards
Name the three programming constructs
Sequence, branching and iteration.
Which two categories of loop is iteration split up
into?
- Count-controlled
- Condition-controlled
Describe how the branching programming construct
works
A certain block of code is run if a specific condition is met, using IF statements.
What is recursion?
A programming construct in which a subroutine calls itself during its execution until the stopping condition is met.
What is the base case in recursion?
A condition that must be met in order for the recursion to end.
State two advantages of recursion
● Can be represented in fewer lines of
code
● Easier to express some functions
recursively than using iteration
State a disadvantage of recursion
- Inefficient use of memory
- Danger of stack overflow
- Difficult to trace
Give two pieces of information that are stored on the
call stack.
- Parameters
- Return addresses
- Local variables
Define scope
The section of the program in which a variable
is accessible
Give two advantages of using local variables over
global variables
- Less memory is used
- Self-contained so unaffected by code outside
of the subroutine - Take precedence over global variables with
the same name
What is top-down design?
A technique used to modularise programs in which
the problem is continually broken down into
sub-problems, until each can be represented as an
individual, self-contained module which performs a
certain task.
State two advantages of a modular design
- Makes a problem easier to understand and approach
- Simpler to divide tasks between a team
- Easier to manage project
- Self-contained modules simplify testing and maintenance
- Greater reusability
Give another name for top-down design
Stepwise refinement
What is the difference between procedures and
functions?
Functions must always return a single value while a procedure does not always have to return a value.
What does it mean to pass a parameter to a subroutine by reference?
The address in memory of the parameter is passed to the subroutine so its value outside of the subroutine will be updated.
State two features of IDEs.
- Stepping
- Variable watch
- Breakpoint
- Source code editor
- Debugging tools
What does IDE stand for?
Integrated Development Environment
What is encapsulation in object-oriented programming?
When attributes are declared as private so can only be accessed and edited by public methods.
Describe the purpose of encapsulation in object-oriented programming
Program complexity is reduced by protecting data from being accidentally edited by other parts of the program.
State two features of IDEs (Developing).
- Auto-Complete
- Auto-Indent
State two features of IDEs (Debugging).
- Stepping
- Breakpoint
What is a constructor?
special method of a class
Discuss the benefits of using an IDE to write and test a program rather than using a text editor. (Knowledge)
IDE is software that has function such as: an editor, compiler
Discuss the benefits of using an IDE to write and test a program rather than using a text editor. (Application)
Writing
Auto-Indent would automatically indent for the programmer when needed lowering the possibility for errors and improving the code quality.
Auto-complete would automatically complete keywords lowering the chance for error through spelling mistakes etc.
Testing
Stepping would run the code line by line which would make it easier to find an error in a program which in the long-run improves the quality of the code and helps reduce errors/
Discuss the benefits of using an IDE to write and test a program rather than using a text editor. (Evaluation)
IDES improve quality of code as there is a less likely chance for human error which also reduces the amount of time a program takes to be made as less time is spent on debugging.