This course provides an introduction to object oriented programming (OOP) using the Java programming language. Its main objective is to teach the basic concepts and techniques which form the object oriented programming paradigm Students completing the course should know:
(a) The model of object oriented programming: abstract data types, encapsulation, inheritance and polymorphism.
(b) Fundamental features of an object oriented language like Java: object classes and interfaces, exceptions and libraries of object collections.
(c) How to take the statement of a business problem and from this determine suitable logic for solving the problem; then be able to proceed to code that logic as a program written in Java.
(d) How to test, document and prepare a professional looking package for each business project using javadoc.
To pass the course students should successfully carry out programmatic assignments, participate to lab exercises, design and develop a bigger project in two phases and participate to the written midterm and final exams.
The courses of the Computer Science Department are designated with the letters "CS" followed by three decimal digits. The first digit denotes the year of study during which students are expected to enroll in the course; the second digit denotes the area of computer science to which the course belongs.
Advised Year of Enrollment
First, Second, Third and Fourth year
Computer Science Area
Introductory - General
Background (Mathematics, Physics)
Networks and Telecommunication
Computer Vision and Robotics
Algorithms and Theory of Computation
The following pages contain tables (one for each course category) summarizing courses offered by the undergraduate studies program of the Computer Science Department at the University of Crete. Courses with code-names beginning with "MATH" or "PHYS" are taught by the Mathematics Department and Physics Department respectively at the University of Crete.