existing programming teaching materials · existing programming teaching materials september 14,...

22
Existing programming teaching materials September 14, 2004 Živana Komlenov 1 Existing programming teaching materials Section ‘Course: Object-Oriented Programming with Java’ (OOJava) Živana Komlenov Department of Mathematics and Informatics Faculty of Science University of Novi Sad 4 th Workshop “Software Engineering Education and Reverse Engineering” Zagreb, 5 – 12 September 2004 Živana Komlenov: Existing programming teaching materials 2 Goal Our ultimate goal: Creation of joint teaching material for ‘Course: Object-Oriented Programming with Java’ (OOJava). As an important part of the whole project special attention should be paid to high quality examples. Therefore, forming a pool of examples and student assignments has been started. Work is in progress, so all contributions are still welcome.

Upload: others

Post on 25-Dec-2019

15 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 1

Existing programming teaching materials

Section ‘Course: Object-Oriented Programming with Java’(OOJava)

Živana KomlenovDepartment of Mathematics and Informatics

Faculty of ScienceUniversity of Novi Sad

4th Workshop “Software Engineering Education and Reverse Engineering”

Zagreb, 5 – 12 September 2004

Živana Komlenov: Existing programming teaching materials 2

Goal

• Our ultimate goal: Creation of joint teaching material for ‘Course: Object-Oriented Programming with Java’(OOJava).

• As an important part of the whole project special attention should be paid to high quality examples.

• Therefore, forming a pool of examples and student assignments has been started.

• Work is in progress, so all contributions are still welcome.

Page 2: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 2

Živana Komlenov: Existing programming teaching materials 3

Existing programming teaching materials

• Currently 6 Java courses are taught at some of our member universities.

• Their examples have been gathered (texts of the examples + source code with comments (any existing versions)), analyzed and sorted in an appropriate way.

• The emphasis is not on examples that are directly used during the lecture, but on every other kind of supporting examples (student self-study, assignments, lab exercises, longer examples for seminar/semester papers, ... )

Živana Komlenov: Existing programming teaching materials 4

Division of examples

• Principal suggestion was to divide the examples into at least three groups:– Supporting Java examples - extra examples, similar to

those presented during the lecture, intended to encourage students' individual experimenting.

– Short exercises - for instance, practical assignments, lab exercises, etc.

– Longer examples - more complicated tasks, given as seminar assignments, with longer deadlines (up to several months).

Page 3: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 3

Živana Komlenov: Existing programming teaching materials 5

Division comments

• However, there is no perfect way to draw the line among these groups, so all suggestions or different concepts of the division are very welcome.

• Additionally, we are going through some open - source Internet materials, as well as good textbooks used worldwide in similar courses.

• The idea is to collect useful pieces of information and include them in our project.

Živana Komlenov: Existing programming teaching materials 6

Contributors

• Institute of Informatics, Humboldt University, Berlin• Department of Mathematics and Informatics, Faculty of

Science, University of Novi Sad• Department of Computer Science and Engineering,

Faculty of Electrical Engineering, University of Belgrade• Chair of Computer Science, Mathematical Faculty,

University of Belgrade• Computer Science and Engineering Department, Faculty

of Automation and Computer Science and Engineering, "Politehnica" University of Timisoara

Page 4: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 4

Živana Komlenov: Existing programming teaching materials 7

Institute of Informatics, Humboldt University, Berlin

• Prof. Klaus Bothe• Course: Practical Informatics I

– First semester course– Last time taught in winter semester 2001/2002– Computers, algorithms, data, programs, concepts of

programming languages, imperative and object-oriented programming, programming techniques, bases of systematic software development

– Followed by Java examples

Živana Komlenov: Existing programming teaching materials 8

Institute of Informatics, Humboldt University, Berlin

• Contributions:– Java examples used in the lecture, suitable for

Supporting Java examples group– Assignments, some included in Short exercises– Java examples used during the exercises, suitable

for section Short exercises

Page 5: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 5

Živana Komlenov: Existing programming teaching materials 9

DMI, Faculty of Science,Novi Sad

• Prof. Mirjana Ivanovic• Course: Programming Languages

– (semester 3, 2 hours/week lecture + 1 hours/week exercises + 1 hours/week lab

– semester 4, 2 hours/week lecture + 1 hours/week exercises + 2 hours/week lab)

– History of programming languages. Basic characteristics of programming languages and most common differences.

– Object-oriented methodology: design and programming. Principal elements: classes, inheritance, dynamic binding. Review of some hybrid object-oriented languages.

Živana Komlenov: Existing programming teaching materials 10

DMI, Faculty of Science,Novi Sad

– Java. Program structure. Data types, classes and objects. Control and repetitive commands. Structured data types. Methods, class libraries.

– Scheme; PROLOG– Exam: practical + oral

• Contributions:– Examples from exercises– Lab assignments, some solutions– Written exams, some examples included in Short exercises– Seminar assignments, included in Longer examples

Page 6: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 6

Živana Komlenov: Existing programming teaching materials 11

DMI, Faculty of Science,Novi Sad

• Prof. Zoran Budimac• Course: Operating Systems I

– (semester 5, 2 hours/week lecture + 2 hours/week exercises + 1 hours/week lab)

– History and development of operating systems. Programming languages suitable for OS implementation. Concurrent programming.

– Processes. Stages. Implementation. Interprocess communication and synchronization. Process communication. Deadlocks.

– Modula-2 and Java examples.

Živana Komlenov: Existing programming teaching materials 12

DMI, Faculty of Science,Novi Sad

– Memory management. Physically available internal memory. Virtual memory organization and management. External memory. File systems.

– Exam: practical + oral

• Contributions:– Java examples from exercises, suitable as one of the last

parts of Supporting Java examples – thread synchronization– Practical assignments (some solved with GUI, as applets,

etc.), included in Short exercises

Page 7: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 7

Živana Komlenov: Existing programming teaching materials 13

DCSE, Faculty of Electrical Engineering, Belgrade

• Prof. Igor Tartalja• Course: Programming Languages and Methods of

Programming– (semester 5+6, 2 hours/week lecture + 2 hours/week

exercises)– Fifth semester: Concepts of object-oriented software. C++ – Sixth semester: Java. Software portability. Bytecode and

JVM. Compilers. Classes and objects. Access control. Constructors. Methods. Parameters. Method overlapping. Garbage collection.

Živana Komlenov: Existing programming teaching materials 14

DCSE, Faculty of Electrical Engineering, Belgrade

– Nested classes and packages. Access rights. Packages. Interfaces. Inheritance.

– Exceptions. Error detection. Throw command. Exception handling. Try-catch-finally construction.

– GUI. Package AWT. Event handling.– No homework, practical assignments, etc.

• Contributions:– Many interesting Supporting Java examples from 'Exercises

for Programming Languages and Methods of Programming Course' (in Serbian), Copyright 2001 by Laslo Kraus

– Written exams, some examples included in Short exercises

Page 8: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 8

Živana Komlenov: Existing programming teaching materials 15

Chair of Computer Science, Mathematical Faculty, Belgrade

• Prof. Dušan Tošic• Course: Programming Languages

– (semester 5+6, 2 hours/week lecture + 2 hours/exercises)– PROLOG; LISP (Scheme)– Java. Compared to Smalltalk. Basic language elements.

Creating applications and applets in Java.– Written exams

• Contributions:– Some seminar assignments – games. Ideal for Longer examples.

Živana Komlenov: Existing programming teaching materials 16

CSED, Faculty of Automatics and Computers, Timisoara

• Prof. Ioan Jurca• Course: Object-Oriented Programming

– (semester 4, 2 hours/week lecture + 2 hours/week lab)– Fundamental concepts of object-oriented programming. Classes

and objects: class structure, fields, methods, object creation.– Extending classes, type compatibility, abstract classes.– Interfaces: declaration, extension, working with interfaces.

Nested classes and interfaces: static nested types, inner classes.– Exceptions: creating exception types, throw and throws; try,

catch, finally.

Page 9: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 9

Živana Komlenov: Existing programming teaching materials 17

CSED, Faculty of Automatics and Computers, Timisoara

– Packages: package naming; relation with the directory structure;short overview of standard Java packages.

– Concurrent programming (threads): creating threads; thread synchronization.

– Graphical User Interfaces: the event model, the AWT package.• Contributions:

– Version in Romanian of the material students should use to prepare their lab assignments. There are 12 lessons, each consisting an explanation of a set of concepts, intersperced with Java programs (or program fragments) and ending with the text of one or more assignments (translation in progress).

Živana Komlenov: Existing programming teaching materials 18

Collected examples

• Examples used at our member universities, divided as suggested:– Supporting Java examples– Short exercises– Longer examples

Page 10: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 10

Živana Komlenov: Existing programming teaching materials 19

Supporting Java examples

• Nice combination of examples from Berlin, Novi Sad and Belgrade (FEE).

• Mainly material used in classical exercises or lectures. Partly suitable for lecture slides, but on the other hand there are examples complex enough to be used as part of any sort of exercises.

• All examples have been translated to English and sorted by topics they cover.

Živana Komlenov: Existing programming teaching materials 20

Supporting Java examples

– Intro– Keyboard– Math– Recursion– Array

• Search• Sort

– String– File– Object– Inheritance

– Time– Interface– Collection– List– Stack– Queue– Error– Exception– Hash– Package

• Plane

• Figures• LinAlgebra

– Tree– Maze– Applet– GUI– Synchronization

• Primitives• Graphics• Examples

– Supermarket

Page 11: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 11

Živana Komlenov: Existing programming teaching materials 21

Short exercises

• Written exams– Several solved examples from Novi Sad and Belgrade

(FEE), as well as texts of some more assignments (much more of those are still in Serbian, stored as additional material).

• Lab exercises– Examples from Novi Sad, used in fall 2003/2004 when

Programming languages course was completely taught for the first time since the new curriculum had been adopted. Some student solutions are enclosed.

Živana Komlenov: Existing programming teaching materials 22

Short exercises

• Practical assignments– Mainly examples concerning thread synchronization, again

from Novi Sad.– Those assignments were given to students in fall 2003/2004

when Operating systems I course was completely taught for the first time since the new curriculum had been adopted.

– They represent typical final assignments, with time limits of approximately 3-4 weeks.

– There are some very good student solutions and just formulations of other possible assignments.

Page 12: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 12

Živana Komlenov: Existing programming teaching materials 23

Lab exercise example

DMI, Faculty of Science, University of Novi Sad, Serbia and MontenegroProgramming Languages, Prof. Mirjana IvanovicLab exercises: Nataša Ibrajter, 2003/2004Student: Miroslav Nadj

Program Parents should read data from file 'Names.txt'. This file contains names of children available for adoption. After reading all names, program should create instances of Child objects, store them in an array and then allow user to enter sex and age for each child.Future parents should be able to set preferred characteristics and as a reply get a list of children sorted by how well they match parents' criteria.Class Child should contain following fields: name, sex, age.Field priority while searching: name, sex, age.Sex entering: m - male, f - female.

Živana Komlenov: Existing programming teaching materials 24

Lab exercise example

import java.io.*;

class Child {private String name, sex;private int age, points;

public Child(String name) {this.name = name;sex = "f";age = 0;points = 0;

}public void putAge(int age) {

this.age = age;}public void putSex(String sex) {

this.sex = sex;}

public void putPoints(int points) {this.points = points;

}public int getPoints() {

return points;}public String getSex() {

return sex;}public String getName() {

return name;}public int getAge() {

return age;}

}

Page 13: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 13

Živana Komlenov: Existing programming teaching materials 25

Lab exercise examplepublic class Parents {

public static void printData(Child[] array) {for (int i = 0; i < array.length; i++) {

System.out.println(" " + (i+1) + ". " + array[i].getName() + " " + array[i].getSex() + " " + array[i].getAge() + " " + array[i].getPoints());

}System.out.println();

}

public static void scoreChildren(Child[] array, String nameWish,String sexWish, int ageWish) {

int points = 0, difference = 0; for (int i = 0; i < array.length; i++) {

if ((array[i].getName()).compareTo(nameWish) != 0) {points += Math.abs(array[i].getName().length() - nameWish.length())*4;

}

Živana Komlenov: Existing programming teaching materials 26

Lab exercise example

if ((array[i].getSex()).compareTo(sexWish) != 0) {points += 200;

}if (array[i].getAge() != ageWish) {

difference = Math.abs(ageWish - array[i].getAge());points += difference*2;

}array[i].putPoints(points);points = 0;

}}

public static Child[] sortChildren(Child[] array) {Child[] tempArray = array;for (int i = 0; i < array.length-1; i++) {

for (int j = i+1; j < array.length; j++) {if (tempArray[i].getPoints() > tempArray[j].getPoints()) {

Page 14: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 14

Živana Komlenov: Existing programming teaching materials 27

Lab exercise exampleChild temp = tempArray[i];tempArray[i] = tempArray[j];tempArray[j] = temp;

}else if (((tempArray[i].getName()).compareTo(tempArray[j].getName()) > 0)

&& (tempArray[i].getPoints() == tempArray[j].getPoints() )) {Child temp = tempArray[i];tempArray[i] = tempArray[j];tempArray[j] = temp;

}}

}return tempArray;

}

public static void main(String[] args) throws IOException {BufferedReader file = new BufferedReader(new InputStreamReader(

new FileInputStream("Names.txt")));

Živana Komlenov: Existing programming teaching materials 28

Lab exercise example

String[] names = new String[10];String name = file.readLine();int n = 0;while (name != null) {

names[n] = name;name = file.readLine();n++;

}BufferedReader input = new BufferedReader(

new InputStreamReader(System.in));Child[] children = new Child[n];System.out.println();System.out.println(" --- Enter sex and age ---");System.out.println();for (int i = 0; i < n; i++) {

children[i] = new Child(names[i]);System.out.println("Name: " + children[i].getName());System.out.print("Sex (m - male; f - female): ");

Page 15: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 15

Živana Komlenov: Existing programming teaching materials 29

Lab exercise example

children[i].putSex(input.readLine());System.out.print("Age: ");children[i].putAge(Integer.parseInt(input.readLine()));System.out.println();

}System.out.println(" --- Enter search criteria --- ");System.out.print("Name: ");String nameWish = input.readLine();System.out.print("Sex: ");String sexWish = input.readLine();System.out.print("Age: ");int ageWish = Integer.parseInt(input.readLine());scoreChildren(children, nameWish, sexWish, ageWish);Child[] tempArray = sortChildren(children);System.out.println(" --- Children matching the criteria --- ");printData(tempArray);

}}

Živana Komlenov: Existing programming teaching materials 30

Longer examples

• Examples from Novi Sad– Practical assignments for students passing from old

curriculum to the new one, that had not taken Programming languages written exam before that, so now they are required to do some practical work instead.

– Enclosed are several student solutions and just formulations of other possible assignments.

• Examples from Belgrade (Mathematical Faculty)– Seminar assignments - different kinds of games, with student

solutions (some of them quite good).

Page 16: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 16

Živana Komlenov: Existing programming teaching materials 31

Additional materials

• Sources:– Examples from other courses at member

universities that include more complex Java assignments (currently in Serbian)

– Examples from representative Java textbooks

Živana Komlenov: Existing programming teaching materials 32

DCSE, Faculty of Electrical Engineering, Belgrade

• Prof. Igor Tartalja• Course: Object-Oriented Software

– (semester 9, 2 hours/week lecture + 2 hours/week exercises)– Combining UML modelling and Java implementations

• Contributions (in Serbian):– Examples from 'Exercises for Object-Oriented Software

Course' (in Serbian), Copyright 2002 by Laslo Kraus– Relatively complex practical assignments– Written exams

Page 17: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 17

Živana Komlenov: Existing programming teaching materials 33

DMI, Faculty of Science,Novi Sad

• Prof. Miloš Rackovic• Course: Artificial Intelligence I

– (semester 5, 2 hours/week lecture + 2 hours/week exercises + 1 hours/week lab)

– Basics of artificial intelligence. Knowledge representation. Searching as a problem solving method. Strategies. Heuristic procedures. Expert systems.

– Exam: practical + oral• Contributions (in Serbian):

– Relatively complex practical assignments

Živana Komlenov: Existing programming teaching materials 34

Java textbooks

• Potentially useful Java textbooks, chosen on account of the variety of neat examples included. Full source code of those hasbeen collected as additional material.– ‘Java Software Solutions’, 4th Edition– ‘Thinking in Java’, 3rd Edition– ‘Java Gently’, 3rd Edition– ‘Teach Yourself Java 2 in 21 Days’, 4th Edition– ‘Effective Java’– ‘Java Cookbook’– ‘Java Examples in a Nutshell’, 3rd Edition

Page 18: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 18

Živana Komlenov: Existing programming teaching materials 35

Java Software Solutions

• ‘Java Software Solutions’, 4th Edition– John Lewis and William Loftus– William Loftus is a serial

entrepreneur and author.– John Lewis is an Associate

Professor of Department of Computing Sciences, Villanova University, PA, USA

– Teaching - Fall 2004: CSC 1051 -Data Structures and Algorithms I

Živana Komlenov: Existing programming teaching materials 36

Thinking in Java

• ‘Thinking in Java’, 3rd Edition– Free electronic book– Published by Prentice-Hall,

December 2002– Bruce Eckel – his company

provides public and private training and consulting services.

– He has published over 150 articles and several books.

– Parts of this book are already used for exercises in Novi Sad.

Page 19: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 19

Živana Komlenov: Existing programming teaching materials 37

Java Gently

• ‘Java Gently’, 3rd Edition– Addison-Wesley, 2001.– Judith Bishop, University of

Pretoria, South Africa– Based on courses given in Java since

1996, and on courses in other languages presented to first year science and engineering students since 1980.

– Over 80 fully worked examples, together with test data and output.

Živana Komlenov: Existing programming teaching materials 38

Teach Yourself Java 2in 21 Days

• ‘Teach Yourself Java 2 in 21 Days’, 4th Edition– Laura Lemay and Rogers

Cadenhead– Sams, 2004.– Clear and personable writing– Extensive use of examples– Logical and complete

organization– Covers the latest developments

in Java

Page 20: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 20

Živana Komlenov: Existing programming teaching materials 39

Effective Java

• ‘Effective Java’ Programming Language Guide– Joshua Bloch, Senior Staff Engineer

at Sun Microsystems, Inc., in the Core Java Platform Group.

– Designed and implemented the award-winning Java Collections Framework, the java.math package.

– Here he shares 57 "nuggets“ - rules and code examples showing what works, what doesn't, and how to use the language libraries to best effect.

Živana Komlenov: Existing programming teaching materials 40

Java Cookbook

• ‘Java Cookbook’Solutions and Examples for Java Developers

– Ian F. Darwin– O'Reilly, 2001– Comprehensive collection of

problems, solutions, and practical examples.

– Short, focused pieces of code that are easy to incorporate into other programs. Focus on things that are useful, tricky, or both.

Page 21: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 21

Živana Komlenov: Existing programming teaching materials 41

Java Examples in a Nutshell

• ‘Java Examples in a Nutshell’, 3rd Edition– David Flanagan– O'Reilly, 2004– Entire book of real-world Java

programming examples to learn from.– Covers Java 1.4 and contains 193

complete, practical examples: over 21,900 lines of densely commented, professionally written Java code, covering 20 distinct client-side and server-side APIs.

Živana Komlenov: Existing programming teaching materials 42

Conclusions

• Comparison of example difficulty– Different approach for first and second (or third) year

courses dictates differences in example choice and dfficulty.– We should try to make the best of both views and allow

lecturers to use those parts of joint course material they find suitable for their students.

• Teaching programming vs teaching Java– For a first-year course, it is no longer sufficient to just teach

a language.– In addition to explaining syntax and the construction of a

well- formed program, a modern Java course has to include techniques for problem solving.

Page 22: Existing programming teaching materials · Existing programming teaching materials September 14, 2004 Živana Komlenov 2 3 Živana Komlenov: Existing programming teaching materials

Existing programming teaching materials September 14, 2004

Živana Komlenov 22

Živana Komlenov: Existing programming teaching materials 43

Statistics - current state of gathered material

• Supporting Java examples– All collected examples translated and sorted.

• Short exercises– Written exams - Just several solved examples translated and included (all

available solutions). Texts of a lot of other assignments are mainly still in Serbian.

– Lab exercises - Texts of all examples included. Only a few student solutions enclosed (all of those found).

– Practical assignments – Again just several full examples collected. Formulations of other possible assignments are partly still in Serbian.

• Longer examples– All collected examples translated and sorted.– 30% just as formulations of possible assignments.

Živana Komlenov: Existing programming teaching materials 44

Future work

• Work done so far is just a basis for a complete pool of assignments. It gives us a good starting point, still leaving space for much more effort and coordinated example collecting and sorting.

• Only when collected examples start being combined and used, we shall be able to define the most appropriate division strategy and ideas for future work.

• Tasks:– Including all sorts of additional examples.– Precise programs of lab exercises and practical assignments

for other types of exercises, seminars, etc.– English versions of all available assignments.– Local versions later.