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 outcome | Level | Weight | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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 workload | 0.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 workload | 1.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 workload | 1h | |||||||||||||||
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 workload | 0.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 workload | 0.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 workload | 0.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 workload | 1.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 workload | 0.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 workload | 0.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 workload | 0.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 workload | 0.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 workload | 1.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 workload | 2.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 workload | 0.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 workload | 0.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 workload | 0.11h | |||||||||||||||
Variables identification | ||||||||||||||||
Basic concepts Variable identification |
5 min | Acquisition | Onsite | Synchronous | Teacher present | No | No | No | No | No | ||||||
Total unit workload | 0.08h | |||||||||||||||
Declaration of variables | ||||||||||||||||
Basic concepts Declaration of variables |
10 min | Acquisition | Onsite | Synchronous | Teacher present | No | No | No | No | No | ||||||
Total unit workload | 0.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 workload | 0.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 workload | 0.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 workload | 1.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 workload | 0.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 workload | 0.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 workload | 0.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 workload | 0.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 workload | 1.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 workload | 1.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 workload | 0.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 workload | 1h | |||||||||||||||
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 workload | 0.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 workload | 1.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 workload | 1.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 workload | 0.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 workload | 0.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 workload | 1.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 workload | 0.75h | |||||||||||||||
While loop (8.3) | ||||||||||||||||
Total unit workload | 0h | |||||||||||||||
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 workload | 2.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 workload | 0.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 workload | 0.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 workload | 1.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 workload | 1.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 workload | 0.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 workload | 0.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 workload | 1.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 workload | 3.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 workload | 1.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 workload | 0.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 workload | 1.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 workload | 1.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 workload | 0.75h | |||||||||||||||
Total course workload | 49.5h |