Object Approach to Problem Solving (Playful OOP)

To PDF To JSON
Object Approach to Problem Solving (Playful OOP)
The aim of the course is to learn the basic programming concepts (branching, variables, inheritance, etc.) of object-oriented programming and to learn how to navigate in the Greenfoot environment. The well-known game Bomberman is used as a demonstration.
Planned ECTS: 4
Number of learners: 5
Mode of delivery: Face to Face
Status: In planning
Course public access: Private
Contributors:
Michal Varga, Nika Kvaššayová
Course learning outcomeLevelWeight
Understanding the basic principles of object-oriented programming Understanding 25
The ability of creating own programs with the use of OOP Creating 20
Understanding the syntax of the Java programming language Applying 10
Understanding the basics of algorithmisation Understanding 25
Analysing program execution based on the source code Analysing 20
Total weight: 100
Topic / Unit name Workload Learning type Mode of delivery Groups Collaboration Feedback Mandatory activity Assessment
Points Type Providers
Greenfoot environment
Applying Understanding the syntax of the Java programming language (20%), Creating The ability of creating own programs with the use of OOP (80%)
The Greenfoot environment
  Creating a new project
Bomberman project
20 min Practice Onsite Synchronous Teacher present No No No No No
Total unit workload0.33h
Class definition
Understanding Understanding the basic principles of object-oriented programming (60%), Applying Understanding the syntax of the Java programming language (20%), Creating The ability of creating own programs with the use of OOP (20%)
Object and classes
  Basic concepts
Object
10 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 1.1
Identification of objects and their properties
15 min Investigation Onsite Synchronous Teacher present No Yes No No No
  Basic concepts
Class, instance, inheritance
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 1.2
Inheritance of Square and Rectangle classes
5 min Discussion Onsite Synchronous Teacher present No Yes Teacher, Peer No No
  Basic concepts
Abstract classes
10 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 1.3
Creating class inheritances
30 min Production Onsite Synchronous Teacher present No Yes Teacher No No
Total unit workload1.41h
Creating an instance of the world
  Orientation in Greenfoot
World, Actor, MyWorld
10 min Acquisition Onsite Synchronous Teacher present No No No No No
  Image settings
How to choose, create, import, paste an image
10 min Practice Onsite Synchronous Teacher present No No No No No
  Exercise 1.4
Creating a tile
15 min Production Onsite Synchronous Teacher present No No Teacher No No
  Code observation
Class constructor
10 min Investigation Onsite Synchronous Teacher present No Yes No No No
  Exercise 1.5
Editing class constructor MyWorld
15 min Practice Onsite Synchronous Teacher present No No Teacher, Peer No No
Total unit workload1h
Creating a player
  Basic concepts
subclass, object identity
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 1.6
Changing player's position
15 min Practice Onsite Synchronous Teacher present No No Teacher No No
Total unit workload0.5h
Object methods
  Basic concepts
Method
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 1.7
Method calling
15 min Investigation Onsite Synchronous Teacher present No No Teacher, Peer No No
Total unit workload0.5h
Revision
  Theory revision
object, attributes, methods, instancies
5 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 1.A - 1.G
Attribute properties; Class hierarchy; World creation; Changing the graphical representation; Changing the graphical representation of Player; Calling methods with parameters; World methods
40 min Assessment Onsite Synchronous Teacher present No No No No 35 Summative Teacher
Total unit workload0.75h
Algorithm
Understanding Understanding the basics of algorithmisation (60%), Applying Understanding the syntax of the Java programming language (10%), Analysing Analysing program execution based on the source code (20%), Creating The ability of creating own programs with the use of OOP (10%)
Algorithm, its properties and algorithmisation
  Basic concepts
A sequence of steps
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 2.1
Sequence of steps
20 min Investigation Onsite Synchronous Teacher present Yes No Teacher, Peer No No
  Basic concepts
algorithm and its properties
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 2.2
Algorithm creation
25 min Practice Onsite Synchronous Teacher present No Yes Teacher No No
  Basic concepts
algorithmisation
15 min Discussion Onsite Synchronous Teacher present No No No No No
Total unit workload1.5h
Creation of a method
  Code explanation
Method act()
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 2.3
Exploring methods (Player)
10 min Practice Onsite Synchronous Teacher present Yes No Teacher, Peer No No
  Code explanation
method move()
10 min Acquisition Onsite Synchronous Teacher present No No No No No
  Basic concepts
keyword this
5 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 2.4
Player movement editting
10 min Production Onsite Synchronous Teacher present No No Teacher, Peer No No
Total unit workload0.83h
Writing a documentation
  Basic concepts
Documentation comments
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 2.5
Adding comments
5 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercise 2.6
Adding comments
5 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercise 2.7
Exploring the documentation window
10 min Investigation Onsite Synchronous Teacher present Yes No Teacher, Peer No No
Total unit workload0.58h
Controlling the app from the Greenfoot environment
  Exercise 2.8
Method call
5 min Investigation Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
autocompleting
5 min Investigation Onsite Synchronous Teacher present No Yes No No No
  Basic concepts
Buttons
5 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 2.9
Application controls
15 min Practice Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Method call Greenfoot.delay(time)
10 min Investigation Onsite Synchronous Teacher present No No No No No
  Exercise 2.10
Method for Player movement
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload0.83h
Revision
  Theory revision
algorithm, properties, algorithmisation, buttons
5 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 2.A - 2.D
algorithm, documentation, Player movement
40 min Assessment Onsite Synchronous Teacher present No No No No 20 Summative Teacher
Total unit workload0.75h
Branching
Understanding Understanding the basics of algorithmisation (70%), Applying Understanding the syntax of the Java programming language (10%), Analysing Analysing program execution based on the source code (10%), Creating The ability of creating own programs with the use of OOP (10%)
Incomplete code branching
  Code explanation
method turn()
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Basic concepts
incomplete branching
10 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 3.1
Conditional Player movement
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercise 3.2
Change attributes for movement
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
relational operators
30 min Acquisition Onsite Synchronous Teacher present No Yes No No No
  Exercise 3.3
Player rotation
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.5h
Complete code branching
  Exercise 3.4
Wall preparation
30 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Touching the wall
20 min Discussion Onsite Synchronous Teacher present No Yes Teacher, Automated No No
  Exercises 3.5 - 3.8
Wall obstacles
30 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Complete branching
15 min Discussion Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercises 3.9 - 3.11
Complete branching (obstacles and movement)
40 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload2.25h
Multiple code branching
  Exercises 3.12 - 3.13
Player rotation
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Basic concepts
Multiple branching
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 3.14
Image rotation
8 min Investigation Onsite Synchronous Teacher present No Yes Teacher No No
  Exercise 3.15
Movement of multiple Players
7 min Investigation Onsite Synchronous Teacher present No Yes Teacher No No
Total unit workload0.75h
Revision
  Theory revision
branching
5 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 3.A - 3.D
branching
40 min Assessment Onsite Synchronous Teacher present No No No No 20 Summative Teacher
Total unit workload0.75h
Variables and expressions
Understanding Understanding the basics of algorithmisation (70%), Applying Understanding the syntax of the Java programming language (10%), Analysing Analysing program execution based on the source code (10%), Creating The ability of creating own programs with the use of OOP (10%)
Variables
  Basic concepts
Variables
7 min Acquisition Onsite Synchronous Teacher present No No No No No
Total unit workload0.11h
Variables identification
  Basic concepts
Variable identification
5 min Acquisition Onsite Synchronous Teacher present No No No No No
Total unit workload0.08h
Declaration of variables
  Basic concepts
Declaration of variables
10 min Acquisition Onsite Synchronous Teacher present No No No No No
Total unit workload0.16h
Initialization and assignment of values to variables
  Basic concepts
Iinitialization of variables
5 min Acquisition Onsite Synchronous Teacher present No No No No No
Total unit workload0.08h
Data types and examples of declaring variables
  Basic concepts
Data types
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Code explanation
data type enum
3 min Acquisition Onsite Synchronous Teacher present No No No No No
Total unit workload0.3h
Expressions and operators
  Basic concepts
Operators
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Code explanation
Object expression
5 min Acquisition Onsite Synchronous Teacher present No No No No No
  Basic concepts
Arithmetic operators and expressions
10 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Basic concepts
Boolean operators
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Basic concepts
Relational operators
10 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 4.1
Difference between algorithms
5 min Investigation Onsite Synchronous Teacher present No No Teacher No No
  Basic concepts
Boolean expressions
10 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 4.2
Logical operators and intervals
15 min Investigation Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercise 4.3
Adding values and comparing algorithms
5 min Investigation Onsite Synchronous Teacher present No Yes Teacher, Peer No No
Total unit workload1.5h
Advanced player controls
  Basic concepts
constructor, attributes
10 min Acquisition Onsite Synchronous Teacher present No No No No No
  Code explanation
constructor, attributes
20 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 4.4
Multiplayer control
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload0.75h
Player creation in the world and a reference variable
  Exercise 4.5
Renaming the world
10 min Practice Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Reference variable
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 4.6
Controlling the second player
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercise 4.7
Properties assignment problems
15 min Investigation Onsite Synchronous Teacher present No Yes Teacher No No
Total unit workload0.83h
Extension of player features and overloading of constructors
  Basic concepts
Constructor overloading
5 min Acquisition Onsite Synchronous Teacher present No Yes No No No
  Exercise 4.8
Expanding the player with new attributes
5 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Constructor overloading
10 min Practice Onsite Synchronous Teacher present No Yes No No No
  Exercise 4.9
step size
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercise 4.10
Adjusting the speed of player movement
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload0.66h
Revision
  Theory revision
Operators
20 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 4.A
Distinguishing players
25 min Assessment Onsite Synchronous Teacher present No No No No 5 Summative Teacher
Total unit workload0.75h
Association
Understanding Understanding the basic principles of object-oriented programming (60%), Understanding Understanding the basics of algorithmisation (10%), Applying Understanding the syntax of the Java programming language (10%), Analysing Analysing program execution based on the source code (10%), Creating The ability of creating own programs with the use of OOP (10%)
Ensuring the impassibility of walls
  Code explanation
Coordinate determination and local variables usage
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 5.1
Changing the Y position
10 min Practice Onsite Synchronous Teacher present No Yes Teacher, Automated No No
  Basic concepts
Local variables
10 min Acquisition Onsite Synchronous Teacher present No Yes No No No
  Code explanation
Return value method
10 min Practice Onsite Synchronous Teacher present No Yes No No No
  Exercise 5.2
Verifying the possibility of movement
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
The use of list of objects - List class
15 min Practice Onsite Synchronous Teacher present No Yes Teacher, Automated No No
  Exercise 5.3
Verifying obstacles
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.41h
Creating of the Bomb class and cooperation with the Player class
  Exercise 5.4
Creating Bomb class
20 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Planting the bomb by the player
5 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 5.5
Planting the bomb
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Timed bomb detonation
15 min Production Onsite Synchronous Teacher present No Yes No No No
  Code explanation
Limiting the amount of active bombs
15 min Discussion Onsite Synchronous Teacher present No Yes Teacher, Automated No No
  Exercise 5.6
Sound effects
15 min Practice Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.41h
Revision
  Theory revision
coordinations, local variables, return value method, list
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 5.A - 5.B
sound effects, editting code
40 min Assessment Onsite Synchronous Teacher present No No No No 10 Summative Teacher
Total unit workload0.91h
Inheritance
Understanding Understanding the basic principles of object-oriented programming (50%), Applying Understanding the syntax of the Java programming language (10%), Analysing Analysing program execution based on the source code (10%), Creating The ability of creating own programs with the use of OOP (30%)
Inheritance
  Basic concepts
Inheritance
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 6.1
Ancestor and descendant class
20 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Class hierarchy
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 6.2
Obstacles as a single list
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1h
Creating a subclass Arena
  Code explanation
Ancestor
20 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Basic concepts
Ancestor constructor
10 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 6.3
Parametric constructor
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercise 6.4
Constructor for an empty arena
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload0.91h
Overriding
  Code explanation
Overriding
25 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 6.5
Size representation
20 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercise 6.6
Conditional size representation
20 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.08h
Loops
Understanding Understanding the basics of algorithmisation (40%), Applying Understanding the syntax of the Java programming language (10%), Analysing Analysing program execution based on the source code (10%), Creating The ability of creating own programs with the use of OOP (40%)
Layout of the walls in a row (6.4)
  Exercise 6.7
Creating an arena with obstacles
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Basic concepts
For loop
25 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercises 6.8 - 6.12
Layout of the walls in a row
45 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.41h
Formation of a rectangle of walls (6.5)
  Code explanation
Creation of a rectangle of walls
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 6.13 - 6.16
Creation of a rectangle of walls
35 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload0.83h
Revision
  Exercises 6.A - 6.D
Inheritance and the for loop
45 min Assessment Onsite Synchronous Teacher present No No No No 20 Summative Teacher
Total unit workload0.75h
Foreach loop (7.3)
  Exercise 7.8
For loop and detecting damage
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Foreach loop
30 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 7.9 - 7. 11
Hitting player, Remove ownership, List of active bombs
45 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.5h
Revision
  Exercises 7.A - 7.D
Lists and foreach loop
45 min Assessment Onsite Synchronous Teacher present No No No No 20 Summative Teacher
Total unit workload0.75h
While loop (8.3)
Total unit workload0h
Lists
Understanding Understanding the basics of algorithmisation (30%), Applying Understanding the syntax of the Java programming language (10%), Analysing Analysing program execution based on the source code (10%), Creating The ability of creating own programs with the use of OOP (50%)
Player evidence in the arena
  Code explanation
Player evidence in the arena
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 7.1
Verifying the game ending
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercise 7.2
Game ending
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Game Ending
30 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Basic concepts
Containers
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Code explanation
Lists
30 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercises 7.3 - 7.6
Lists
45 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload2.58h
Identification of hit players
  Code explanation
Identification of hit players
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 7.7
Bomb and detecting players in the vicinity
10 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload0.41h
Encapsulation
Understanding Understanding the basic principles of object-oriented programming (50%), Applying Understanding the syntax of the Java programming language (10%), Analysing Analysing program execution based on the source code (10%), Creating The ability of creating own programs with the use of OOP (30%)
Bomb explosion analysis
  Code explanation
Bomb explosion analysis
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
Total unit workload0.25h
Bomb explosion
  Exercises 8.1 - 8.4
Bomb explosion
75 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.25h
Private method
  Basic concepts
Public and private methods
10 min Acquisition Onsite Synchronous Teacher present No No No No No
  Code explanation
Private method
20 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 8.6 - 8.10
Private method
60 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.5h
The reaction of different components to fire
  Code explanation
Influence of fire
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 8.11
Checking the fire overlap with the Player
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Exercise 8.12
Chain reaction bombs
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload0.75h
Revision
  Theory revision
Public and private methods
10 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 8.A - 8.C
actors
35 min Assessment Onsite Synchronous Teacher present No No No No 15 Summative Teacher
Total unit workload0.75h
Polymorphism
Understanding Understanding the basic principles of object-oriented programming (50%), Understanding Understanding the basics of algorithmisation (10%), Applying Understanding the syntax of the Java programming language (10%), Analysing Analysing program execution based on the source code (10%), Creating The ability of creating own programs with the use of OOP (20%)
Adding mines
  Basic concepts
Polymorphism
15 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 9.1
Basic concepts of a mine
20 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Mine probles
10 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 9.2
Creating the ancestor of the Bomb and Mine classes
20 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Basic concepts
Visibility
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Basic concepts
Visibility protected
10 min Investigation Onsite Synchronous Teacher present No Yes No No No
  Exercise 9.3
Visibility - protected
5 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.58h
Defining the shared actions of the Bomb and Mine classes
  Code explanation
Analysing methods of Bomb and Mine
15 min Investigation Onsite Synchronous Teacher present Yes Yes No No No
  Code explanation
Methods design
15 min Practice Onsite Synchronous Teacher present Yes Yes No No No
  Exercises 9.4 - 9.5
Who are you?; Printing the identification
20 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Basic concepts
Virtual methods
10 min Acquisition Onsite Synchronous Teacher present No No No No No
  Exercise 9.6
Printing BOMB
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Polymorphism in the method act()
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 9.7 - 9.8
Controlling the explosion at the ancestor; Creating method act
20 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Template method
30 min Practice Onsite Synchronous Teacher present No Yes No No No
  Exercise 9.9
Overlapping methods in Bomb
20 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
keyword super
10 min Investigation Onsite Synchronous Teacher present No Yes No No No
  Exercises 9.10 - 9.11
Creating methods to explode for the Mine; Enabling Explosives in contact with flames
30 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload3.33h
Player reaction to bomb explosion
  Code explanation
Player reaction
15 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 9.12
Removing individual lists and creating a shared list
20 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Removing errors
15 min Practice Onsite Synchronous Teacher present No Yes No No No
  Exercise 9.13
Operator instanceof
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.08h
Revision
  Theory revision
polymorphism
5 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 9.A - 9.C
Timed explosives; Comparing explosives; Creating Dynamite
40 min Assessment Onsite Synchronous Teacher present No No No No 15 Summative Teacher
Total unit workload0.75h
Random numbers
Understanding Understanding the basics of algorithmisation (50%), Applying Understanding the syntax of the Java programming language (10%), Analysing Analysing program execution based on the source code (10%), Creating The ability of creating own programs with the use of OOP (30%)
Randomising arena layout
  Exercises 10.1 - 10.3
Random number generators
15 min Investigation Onsite Synchronous Teacher present Yes Yes No No No
  Basic concepts
Uniform probability distribution
10 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Code explanation
Actor relocation
10 min Practice Onsite Synchronous Teacher present No Yes No No No
  Exercises 10.4 - 10.6
Constructor for random arena generation; Adding random generation for the arena; Searching free tiles
25 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Wall generation
15 min Practice Onsite Synchronous Teacher present No Yes No No No
  Exercises 10.7 - 10.9
Conditional random generation; Adding attributes to create and search methods; Actor parameter
25 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.66h
Bonuses
  Basic concepts
Bonuses
5 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercise 10.10
Creating a Bonus class
15 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
  Code explanation
Greenfoot.getRandomNubmer(100)
15 min Acquisition Onsite Synchronous Teacher present No Yes No No No
  Exercises 10.11 - 10.14
Bonuses
45 min Production Onsite Synchronous Teacher present No No Teacher, Automated No No
Total unit workload1.33h
Revision
  Theory revision
random numbers
5 min Discussion Onsite Synchronous Teacher present No Yes No No No
  Exercises 10.A - 10.D
random numbers
40 min Assessment Onsite Synchronous Teacher present No No No No 20 Summative Teacher
Total unit workload0.75h
Total course workload49.5h