DAAD project “Joint Course on OOP using Java” Humboldt University Berlin, University of Novi Sad, ‘Polytehnica’ University of Timisoara, University of Plovdiv, University of Belgrade Version: May 28, 2004 Mirjana Ivanović, Klaus Bothe Historical Overview of OOP Subproject: From the Beginning to the End
DAAD project „Joint Course on OOP using Java“ © 2 AGENDA 1.SubProject site – Historical overview 2.Material prepared in Berlin 3.SubProject site - Current state 4.Further steps and Conclusion
DAAD project „Joint Course on OOP using Java“ © 3 1. SubProject site – Historical overview
DAAD project „Joint Course on OOP using Java“ © 4 1. SubProject site – Historical overview
DAAD project „Joint Course on OOP using Java“ © 5 1. SubProject site – Historical overview
DAAD project „Joint Course on OOP using Java“ © 6 1. SubProject site – Historical overview
DAAD project „Joint Course on OOP using Java“ © 7 1. SubProject site – Historical overview
DAAD project „Joint Course on OOP using Java“ © 8 1. SubProject site – Historical overview
DAAD project „Joint Course on OOP using Java“ © 9 1. SubProject site – Historical overview
DAAD project „Joint Course on OOP using Java“ © SubProject site – Historical overview Collected material from Berlin Berlin prepared English versions of some important topics 1.Basic Concepts of Object-Orientation: Objects, Classes, Abstract Data Types 2.Objects and Classes: Additional Useful Features 3.Inheritance, Polymorphism, Dynamic Binding 4.Exception handling 5.Interfaces 6.Event handling 7.Threads & Processes 8.MouseMaze With appropriate examples (sources).
DAAD project „Joint Course on OOP using Java“ © SubProject site – Historical overview Collected material from Novi Sad Serbian Java book Second Edition Appeared in November 2006
DAAD project „Joint Course on OOP using Java“ © SubProject site – Historical overview Collected material from Novi Sad Topics, presentations for Java course prepared according to Serbian Java book Serbian and English versions of presentations – slides 1. Program Structure in Java (SE) 2. Primitive Data Types (SE) 3. Statements (SE) 4. Referential data types (SE) 5. Exception handling (S, E now prepared) 6. Applets (S, E now prepared)
DAAD project „Joint Course on OOP using Java“ © SubProject site – Historical overview Threads by Ioan, Temisoara Topic for 2 nd year students More difficult for students then Klaus’ presentation
DAAD project „Joint Course on OOP using Java“ © 14 AGENDA 1.SubProject site – Historical overview 2.Material prepared in Berlin 3.SubProject site - Current state 4.Further steps and Conclusion
DAAD project „Joint Course on OOP using Java“ © Material prepared in Berlin Basic Topics Cover basic Java programming concepts Intended for students who may or may not already be familiar with OOP concepts Advanced Topics Cover many advanced Java topics Intended for students who whish to broaden their knowledge Students must be familiar with basic Java programming concepts Mainly for elective or higher-year courses
DAAD project „Joint Course on OOP using Java“ © Material prepared in Berlin TopicPresentationContentsStatusWho T01. Getting Started Introduction to Java technology, Java programming environment. Finished Mira, April 2008 T02. The Language Overview (Elements of Java) Basic Java elements, program structure. Finished Mira, April 2008 T03. Primitive Data Types Declaring and initializing variables, simple I/O, operators Finished Mira, April 2008 T04. Statements – Control Structures FinishedMira T05. Introduction to OO Programming Version1. Basic OO programming concepts for novices Objects, classes, built-in Java classes, type casting, java.lang.*, java.util.* Still OpenMira Version2. OO programming concepts in Java for C++ students Objects, classes, inheritance in Java and other programming languages Still OpenMira or maybe Zivana Basic Topics
DAAD project „Joint Course on OOP using Java“ © Material prepared in Berlin TopicPresentationContentsStatusWho T06. Reference Data Types Creating new classes, constructors, overloading, arrays composition, inheritance, polymorphism, interfaces, abstract classes, inner classes Klaus – Finished, Mira - In Progress Klaus (most of them), Mira (abstract classes, inner classes) T07. PackagesFinishedMira T08. Exception Handling FinishedKlaus T09. JavaBeans Basics. Basic Elements of Windows and Applets JFrame, JApplet, running applets Almost Finished Mira, JavaBeans, April T10. Quick Introduction to UML and XML In Progress Mira and students T11. Introducing SE Principles in Java Programming Mouse in MazeFinishedKlaus Basic Topics
DAAD project „Joint Course on OOP using Java“ © Material prepared in Berlin TopicPresentationContentsStatusWho T12. Strings String, StringBuilder, StringBuffer, StringTokenizer, Regular Expressions, Formatting Input, Scanning Output Boro T13. Windows & Applets Still Pending Dragoslav, based on the presentation in Serbian. T14. Collections Arrays, containers, generics FinishedDragoslav T15. The Java I/O System Almost Finished Mira, April T16. SerializationIn ProgressAnastas T17. Java 5 New Features Generics, boxing, varargs, enhanced for loop, enumerations, static imports, annotations, formatting, threading, overriding return types, unicode FinishedDragoslav T18. GenericsFinishedDragoslav Advanced Topics
DAAD project „Joint Course on OOP using Java“ © Material prepared in Berlin TopicPresentationContentsStatusWho T19. Enumerated Types FinishedDragoslav T20. AnnotationsFinishedDragoslav T21. ThreadsThreads in JavaFinished? Classical Synchronization Problems in Java Producer-Consumer Problem, Readers-Writers Problem Generalizations, Dining Philosophers, Semaphores, Event Counters, Bounded Semaphores, Blocking Barriers FinishedDragoslav T22. Network Programming (TCP, UDP, URL, Socket) Network Programming Almost Finished Anastas URL and URLConnection Almost Finished Anastas T23. Distributed Applications Client/Server Programming Almost Finished Anastas RMI T24. Java Security Security Almost Finished Anastas Java Cryptography Architecture Almost Finished Anastas Advanced Topics
DAAD project „Joint Course on OOP using Java“ © Material prepared in Berlin TopicPresentationContentsStatusWho T25. Data Bases (JDBC) Vangel? Milos? T26. Java Internet Programming, Servlets, JSP Vangel? T27. Enterprise JavaBeans Vangel? Mira? T28. Mobile Agent Technology Using Java Dragoslav? Advanced Topics
DAAD project „Joint Course on OOP using Java“ © 21 AGENDA 1.SubProject site – Historical overview 2.Material prepared in Berlin 3.SubProject site - Current state 4.Further steps and Conclusion
DAAD project „Joint Course on OOP using Java“ © SubProject site - Current state
DAAD project „Joint Course on OOP using Java“ © SubProject site - Current state New
DAAD project „Joint Course on OOP using Java“ © SubProject site - Current state Was: Part IV Java programming in large Modified XML new
DAAD project „Joint Course on OOP using Java“ © SubProject site - Current state Rearranged and modified
DAAD project „Joint Course on OOP using Java“ © SubProject site - Current state }} Completely new, really advanced topics, most of them have to be developed
DAAD project „Joint Course on OOP using Java“ © SubProject site - Current state Completely new – Macedonia
DAAD project „Joint Course on OOP using Java“ © SubProject site - Current state Same
DAAD project „Joint Course on OOP using Java“ © 29 AGENDA 1.SubProject site – Historical overview 2.Material prepared in Berlin 3.SubProject site - Current state 4.Further steps and Conclusion
DAAD project „Joint Course on OOP using Java“ © Further steps and Conclusion Significant amount of basic, advanced and DS&A Java topics are covered (most of the material is available in English) To finish topics which are in state: In Progress, Almost Finished, Still Pending, Still Open Presentations based on our book contain a lot of examples (with code) Constant improvements of all available material in future Other colleagues can add their English versions of presentations