Object Oriented Programming

Course ID
CEID_23Y106
Semester
2
Department
Division of Computer Software
Professor
CHATZIDOUKAS PANAGIOTIS, THRAMBOULIDIS KLEANTHIS
ECTS
9

1. Constraints of procedural programming paradigm. The transition from Procedural to Object Oriented Programming ( paradigm shift). The importance of object-oriented example in systems development.

2. Basic mechanisms to handle complexity. Procedural Abstraction, Data Abstraction. Incremental development process.

3. The conceptual model of Object-Oriented Programming. Object, Class, Instance. Structure and behavior of instances and classes.

4. Introduction to the Java programming language. Java as an extension of C. The basic Java library. Application development environments.

5. The program as a composition of objects. Abstract representation of system structure and behavior. UML Basic Diagrams. Class diagram. Object interaction (sequence) diagram.

6. Inheritance, simple and multiple. Interface. Polymorphism, early vs. late binding.

7. Exception handling. Garbage collection.

8. Graphical user interfaces. Event Handling mechanism.

9. Implementation of basic concepts of the object-oriented programming paradigm from the C ++ programming language. The basic C ++ library. Templates, Vectors, ArrayList, LinkedList. Files and streams.

10. Introduction to Multithreading.

11. Network programming. The client-server model. Servlets. Socket programming.

Skip to content