Overview of collected Java teaching materials M. Ivanovic, N. Ibrajter PowerPoint PPT Presentation

presentation player overlay
About This Presentation
Transcript and Presenter's Notes

Title: Overview of collected Java teaching materials M. Ivanovic, N. Ibrajter


1
Overview of collected Java teaching materials
M. Ivanovic, N. Ibrajter
2
Content
  1. SubProject site
  2. Collected material
  3. Some topics by Berlin way
  4. Same topic by Novi Sad way
  5. Some Internet material
  6. Further steps and Conclusion

3
Content
  1. SubProject site
  2. Collected material
  3. Some topics by Berlin way
  4. Same topic by Novi Sad way
  5. Some Internet material
  6. Further steps and Conclusion

4
(No Transcript)
5
(No Transcript)
6
(No Transcript)
7
(No Transcript)
8
(No Transcript)
9
(No Transcript)
10
(No Transcript)
11
Content
  1. SubProject site
  2. Collected material
  3. Some topics by Berlin way
  4. Same topic by Novi Sad way
  5. Some Internet material
  6. Further steps and Conclusion

12
Collected material
  • Berlin prepared slides in German (based on
    previous teaching material)
  • N. Ibrajter translated several lessons in English
  • Novi Sad prepared Java book in Serbian (good base
    for teaching .ppt material)
  • University of Aberdeen (complete .ppt course
    material from Internet)

13
Novi Sad and Berlin Course Differences
  • Both courses cover same topics
  • Presentation will show the differences by the
    example of one topic
  • Berlin students have the course in 1st and Novi
    Sad students in 3rd semester
  • Berlin course, mainly concerns to introduce OO
    programming paradigm
  • Novi Sad course is much more language specific

14
Same Content of the Course
  • Primitive Data Types
  • Operators
  • Operations
  • Statements
  • Object-Oriented Programming in Java
  • Objects
  • Classes
  • References
  • Inheritance
  • Polymorphism
  • Exceptions
  • Inner Classes

15
Content
  1. SubProject site
  2. Collected material
  3. Some topics by Berlin way
  4. Same topic by Novi Sad way
  5. Some Internet material
  6. Further steps and Conclusion

16
Topics in English
  • Introduction (1)Objects, Classes, Abstract Data
    Types (48 slides)
  • Introduction (2)Useful Concepts of OO Paradigm
    (78 slides)
  • Inheritance (56 slides)
  • Exception Handling (46 slides)

17
Introduction (1)Objects, Classes, Abstract Data
Types
  • Programming paradigms imperative and
    object-oriented
  • Data abstraction Abstract data types Classes
    Instances
  • Instance variables, instance methods
  • Example Stack

18
Introduction (2)Useful Concepts of OO Paradigm
  • ADT reuse (classes)
  • Parenthesis structure checked by a stack
  • Transformation of recursion to iteration with a
    stack
  • Comparison of an imperative with an OO
    programTimeTable.java, Time.java,
    Scheduler.java
  • ADT as Java API classes String
  • Data classes Pascal, C
  • Further conceptsOverloading, this the actual
    object, private methods, public variables,
    alias-problem, lexicographical order

19
Inheritance
  • Inheritance
  • Subclasses
  • Superclasses
  • Hierarchy building
  • Simple inheritance (Java)Multiple inheritance
    (C)
  • Once more private, public ? protected
  • Polymorphism Method overloading (ltgt overriding)
  • Class hierarchy and the class Object'
  • Dynamic binding dynamic search for methods
  • final-methods, abstract classes
  • "Wrapper-classes"

20
Content
  1. SubProject site
  2. Collected material
  3. Some topics by Berlin way
  4. Same topic by Novi Sad way
  5. Some Internet material
  6. Further steps and Conclusion

21
NS Course OO Paradigm and Its Concepts 1/2
  • 19 slides
  • 8 code slides, the rest are textual slides
  • No pictures
  • Strictly Java language specific
  • On quite a high level considering terminology
  • Cover OOP paradigm, notion of object, class and
    reference

22
NS Course OO Paradigm and Its Concepts 2/2
  • Basic philosophy structuring programs in a way
    the objects are organized in a real world
  • Creating and using types that group data and code
    segments which use the data
  • Type values are called instances
  • Basic notions of OO programming style
  • object
  • class
  • inheritance

23
Content
  1. SubProject site
  2. Collected material
  3. Some topics by Berlin way
  4. Same topic by Novi Sad way
  5. Some Internet material
  6. Further steps and Conclusion

24
Chapters 8 and 9Inheritance
  • Inheritance
  • Subtyping
  • Substitution
  • Polymorphic variables
  • Static and dynamic type
  • Method polymorphism
  • Overriding
  • Dynamic method lookup

25
The Object class
All classes inherit from Object
26
DoME hierarchy
All classes inherit from Object
27
Polymorphic variables
  • Instance variables in Java can be
    polymorphic.(They can refer to objects of more
    than one type but not simultaneously!)
  • They can hold instances of the declared type, or
    of subtypes of the declared type.
  • This is another example of substitution.

28
Adding items to an ArrayList
  • public class Database
  • private ArrayList items
  • public void addItem(Item theItem)
  • items.add(theItem)
  • ...

Sometimes contains a CD, sometimes a Video
29
Subtyping and assignment
subtype instances may be assigned to supertype
variables (substitution again)
Vehicle v1 new Vehicle() Vehicle v2 new
Car() Vehicle v3 new Bicycle()
30
Content
  1. SubProject site
  2. Collected material
  3. Some topics by Berlin way
  4. Same topic by Novi Sad way
  5. Some Internet material
  6. Further steps and conclusion

31
Further Steps and Conclusion
  • Courses organize content of the topics by
    different criteria
  • The main impression is that the major goal of the
    Berlin course is to offer a student a clear
    overview of the OOP using Java
  • First semester, first programming language
  • NS course goal, on the other hand, is to deeply
    involve students with the Java programming
    language specifics
  • Third semester, second programming language

32
Conclusion
  • Berlin teaching material
  • More interesting
  • Much more easy to follow
  • Puts stress on the difference between OOP and
    other programming paradigms
  • Clearly shows the difference between Java and
    Pascal, C
  • Introduces some basic data structures, like stack
  • NS teaching material
  • More compact
  • Student is forced to struggle with terminology
  • Puts stress on the Java programming language
    specifics
  • More detailed
  • Students prefer this way of presentation
  • Most of them like to minimize home work
  • No suitable additional literature

33
General Idea about Course Material
  • Prepare a collection of different topics and
    concepts (just language, emphasize on OO design
    and style of programming, advanced topics, some
    real complex applications,). Use different
    versions of the same topics (Berlin. Novi Sad,
    Timisoara, Belgrade, Skopje,)
  • Prepare complete materials for various stiles of
    courses
  • Kernel of same basic topics
  • Material for a general course on Java programming
    language
  • Material for OO programming course
  • Possibility to prepare different courses based on
    available material (lecturer can make specific
    selection)
Write a Comment
User Comments (0)
About PowerShow.com