Αντικειμενοστραφής Προγραμματισμός
This course continues developing Object Oriented Programming concepts and principles that have been
introduced in the course \\\»Algorithms & Programming\\\».
It aims to provide an extensive understanding of object-oriented programming and the development of
object-oriented thinking to solve computational and programming problems. Emphasis is given on teaching
basic principles of object-oriented programming and their application using the JAVA programming language as
well as understanding the capabilities of JAVA compared with other programming languages.
It also includes an overview of recursion and other advanced algorithms and techniques.
Programming is not just writting code. Developers should also make some compromises, to choose among
alternative designs, different algorithms and different implementations. At the same time they have to deal
with compatibility issues, performance and reliability and must also satisfy the specifications. Upon
completion of this course, students should know basic searching and sorting algorithms and also be able to:
Composition and Inheritance: composition, recursive classes, subclasses/derived classes, access modifiers,
overloading and overriding fields and methods, class hierarchies, polymorphism, comparison of inheritance
and composition
Error Handling, Exceptions
Enhanced class design: abstract classes and methods, interfaces, packages
General approaches to the construction of efficient solutions to problems, recursion, searching and
sorting.