|
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 Understanding the syntax of the Java programming language (20%), 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 the basic principles of object-oriented programming (60%), Understanding the syntax of the Java programming language (20%), 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 the basics of algorithmisation (60%), Understanding the syntax of the Java programming language (10%), Analysing program execution based on the source code (20%), 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 the basics of algorithmisation (70%), Understanding the syntax of the Java programming language (10%), Analysing program execution based on the source code (10%), 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 the basics of algorithmisation (70%), Understanding the syntax of the Java programming language (10%), Analysing program execution based on the source code (10%), 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 the basic principles of object-oriented programming (60%), Understanding the basics of algorithmisation (10%), Understanding the syntax of the Java programming language (10%), Analysing program execution based on the source code (10%), 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 the basic principles of object-oriented programming (50%), Understanding the syntax of the Java programming language (10%), Analysing program execution based on the source code (10%), 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 the basics of algorithmisation (40%), Understanding the syntax of the Java programming language (10%), Analysing program execution based on the source code (10%), 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 the basics of algorithmisation (30%), Understanding the syntax of the Java programming language (10%), Analysing program execution based on the source code (10%), 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 the basic principles of object-oriented programming (50%), Understanding the syntax of the Java programming language (10%), Analysing program execution based on the source code (10%), 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 the basic principles of object-oriented programming (50%), Understanding the basics of algorithmisation (10%), Understanding the syntax of the Java programming language (10%), Analysing program execution based on the source code (10%), 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 the basics of algorithmisation (50%), Understanding the syntax of the Java programming language (10%), Analysing program execution based on the source code (10%), 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 | |||||||||||||||