Compulsory courses |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-0120 | English Language 1 | 3 | 0 | 5 |
321-1500 | Discrete Mathematics I | 3 | 2 | 5 |
321-1200 | Structured Programming | 3 | 4 | 5 |
321-1400 | Introduction to Computer Science and Communications | 3 | 0 | 5 |
321-2000 | Logic Design | 3 | 2 | 5 |
321-1100 | Calculus | 3 | 2 | 5 |
321-2400 | Probability and Statistics | 3 | 2 | 5 |
Compulsory courses |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-0130 | English Language 2 | 3 | 0 | 5 |
321-2100 | Object-Oriented Programming I | 3 | 2 | 5 |
321-2450 | Discrete Mathematics II | 3 | 2 | 5 |
321-3300 | Computer Communications | 3 | 2 | 5 |
321-2550 | Circuit Theory | 3 | 2 | 5 |
321-3150 | Linear Algebra | 3 | 2 | 5 |
321-2050 | Physics | 3 | 2 | 5 |
Compulsory courses |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-0140 | English Language 3 | 3 | 0 | 5 |
321-3650 | Object-Oriented Programming II | 3 | 2 | 5 |
321-3350 | Computer Architecture | 3 | 2 | 5 |
321-3000 | Data Structures | 3 | 2 | 5 |
321-5500 | Signals and Systems | 3 | 2 | 5 |
321-3750 | Stochastic Procedures | 3 | 2 | 5 |
321-8950 | Digital Innovation & Entrepreneurship | 3 | 0 | 5 |
Compulsory courses |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-4200 | Algorithms and Complexity | 3 | 2 | 5 |
321-3100 | Information Systems Analysis and Design II | 3 | 2 | 5 |
321-3200 | Databases I | 3 | 2 | 5 |
321-7900 | Electronics | 3 | 2 | 5 |
321-4100 | Operating Systems | 3 | 2 | 5 |
321-4120 | Advanced Topics of Programming Languages | 3 | 2 | 5 |
Compulsory courses |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-3700 | Databases II | 3 | 2 | 5 |
321-6450 | Computer Networks | 3 | 2 | 5 |
321-6700 | Theory of Computation | 3 | 0 | 5 |
321-2300 | Operation of Business & Information Systems | 3 | 2 | 5 |
321-4000 | Software Engineering | 3 | 2 | 5 |
321-3450 | Telecommunications | 3 | 2 | 5 |
Compulsory courses |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-3400 | Information and Communication Systems Security | 3 | 2 | 5 |
321-7950 | Distributed Systems | 3 | 2 | 5 |
321-5200 | Information Law | 3 | 0 | 5 |
321-6500 | Information Systems Management | 3 | 0 | 5 |
321-88100 | Internet Programming | 3 | 2 | 5 |
321-3600 | Artificial Intelligence | 3 | 2 | 5 |
Cycle 1: Information and Communication Systems Security and Privacy |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-9700 | Computer Network Security and Privacy Enhancing Technologies | 3 | 0 | 5 |
321-5750 | Privacy and Data Protection Law | 3 | 0 | 5 |
Cycle 2: Information Systems and Entrepreneurship |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-8100 | Project Management | 3 | 2 | 5 |
321-7650 | and Tools | 3 | 0 | 5 |
321-5150 | Information Systems Analysis and Design Methodologies | 3 | 0 | 5 |
Cycle 3: Computer and Telecommunication Technologies |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-7050 | Digital Systems Design | 3 | 2 | 5 |
321-10300 | Digital Communications | 3 | 2 | 5 |
Cycle 4: Communication Systems and Networks |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-8350 | Network Management | 3 | 0 | 5 |
321-7000 | Performance Evaluation and Simulation of Computer Systems an | 3 | 2 | 5 |
Cycle 5: Information Management and Intelligent Systems |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-7750 | Introduction to Robotics | 3 | 2 | 5 |
321-6100 | Natural Language Processing | 3 | 0 | 5 |
Cycle 6: Computer Science Foundations |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-8600 | Information Theory | 3 | 0 | 5 |
Cycle 1: Information and Communication Systems Security and Privacy |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-10750 | Mobile and Wireless Networks Security | 3 | 0 | 5 |
321-6000 | Security on Physical Layer | 3 | 0 | 5 |
321-8050 | Cryptography | 3 | 0 | 5 |
Cycle 2: Information Systems and Entrepreneurship |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-5600 | Human - Computer Interaction and Web Applications | 3 | 2 | 5 |
321-8500 | Decision Support Systems | 3 | 2 | 5 |
321-11100 | Electronic Government Technologies and Applications | 3 | 0 | 5 |
Cycle 3: Computer and Telecommunication Technologies |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-7800 | Wireless Communications | 3 | 2 | 5 |
321-8750 | Introduction to VLSI | 3 | 2 | 5 |
321-7850 | Microprocessors | 3 | 2 | 5 |
321-9350 | Digital Image Processing | 3 | 2 | 5 |
Cycle 4: Communication Systems and Networks |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-7250 | Mobile Communication Networks | 3 | 2 | 5 |
321-6250 | Internet Protocols and Architectures | 3 | 0 | 5 |
321-11000 | Cloud Technologies | 3 | 2 | 5 |
Cycle 5: Information Management and Intelligent Systems |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-10200 | Information Retrieval | 3 | 0 | 5 |
321-9250 | Data Mining | 3 | 2 | 5 |
321-6050 | Intelligent Recommender Systems | 3 | 0 | 5 |
321-6600 | Computer Vision | 3 | 2 | 5 |
Cycle 6: Computer Science Foundations |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-99000 | Numerical Analysis | 3 | 0 | 5 |
321-8000 | Game Theory | 3 | 0 | 5 |
321-9850 | Mathematical Modeling | 3 | 0 | 5 |
321-9000 | Forecasting Techniques | 3 | 0 | 5 |
Optional courses |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-2630 | 3 | 2 | 5 | |
321-7600 | 3 | 0 | 5 |
Cycle 1: Information and Communication Systems Security and Privacy |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-99100 | Regulatory and Social Issues in Information Society | 3 | 0 | 5 |
Cycle 2: Information Systems and Entrepreneurship |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-5400 | Information Systems Strategy and Investment | 3 | 0 | 5 |
321-8200 | E-Commerce Technologies and Applications | 3 | 0 | 5 |
Cycle 3: Computer and Telecommunication Technologies |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-3250 | Internet of Things | 3 | 2 | 5 |
321-10650 | Satellite Communications | 3 | 2 | 5 |
321-8650 | Optoelectronics | 3 | 2 | 5 |
321-6550 | Multimedia | 3 | 2 | 5 |
Cycle 4: Communication Systems and Networks |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-9400 | Sensor Networks | 3 | 2 | 5 |
321-9120 | Design and Development of Mobile Computing applications | 3 | 2 | 5 |
Cycle 5: Information Management and Intelligent Systems |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-9450 | Applied Topics in Data Structures and Databases | 3 | 0 | 5 |
321-7400 | Knowledge Engineering and Knowledge Systems | 3 | 0 | 5 |
Cycle 6: Computer Science Foundations |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-10000 | Algorithms and Combinatorial Optimization | 3 | 0 | 5 |
Optional courses |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-2600 | 3 | 0 | 5 |
Compulsory courses |
||||
---|---|---|---|---|
Lesson Code | Title | H(T) | H(L) | ECTS |
321-7100 | Degree Thesis | 30 |
Title | Object-Oriented Programming II |
---|---|
Lesson Code | 321-3650 |
Semester | 3 |
ECTS | 5 |
Hours (Theory) | 3 |
Hours (Lab) | 2 |
Faculty | Kambourakis Georgios |
- Introduction to OOP and UML.
- Java Language Fundamentals: Data types, Variable declarations, Operators and Assignment, Control structures, Strings, Arrays, Collections, Wrapper classes, Record classes.
- Java as an OOP language: Classes, Constructors, Access modifiers, Packages, Interfaces, Garbage collection, Encapsulation, Cohesion, Coupling.
- Exception Handling: Basics, Exception Hierarchy, The Throwable class, Unchecked and checked exceptions, Exception and Inheritance, User defined Exceptions, Redirecting and Re-throwing Exceptions
- Introduction to Concurrent programming and Multithreading: Introduction, Thread Creation, Thread Life cycle, priorities and scheduling, Synchronization, Communication of Threads.
- Files and I/O Streams: File Input stream and File output stream, Serialization.
- AWT, Swings, JavaFX.
This course covers the fundamentals of Object Oriented Programming (OOP) using Java. The main learning objectives for this course are:
- To build and develop OOP thinking: Learn to think in objects.
- Τo familiarize students with the basic features of the language API and the know-how to use them correctly and efficiently
- Τo cover the usage principles of encapsulation, coupling, cohesion, inheritance, polymorphism and method overloading/overriding
- Τo teach and demonstrate sound OOP practices and program structuring
- To develop analytical programming thinking and reasoning skills.
The aforementioned objectives are achieved through course lectures and extensive laboratory exercises.
Not required.
- Liang D. Y., Java, 10th ed.
- Deitel Harvey M., Deitel Paul J., Java Programming, 10th ed.
- Cadenhead R, and Lemay L., Java 7, 6th ed.
- Kavouras, Ι. Κ., Roukounaki, Java Programming, Klidarithmos Pubs., (in Greek).
- Horton, I., Beginning Java 2.
- Horstmann, K. Big Java, Wiley.
- Horstmann, C. S., Cornell, G., Core Java, Prentice Hall.
- Eckel, B., Thinking in Java, Prentice Hall, 2nd Edition.
- Naughton, P., Java Handbook, Osborne.
- Burns, J., Javascript Goodies, Earthweb press.
- Kathy Sierra and Bert Bates, SCJP Sun Certified Programmer for Java.
- Cay S. Horstmann, Java 8 for the Really Impatient.
- Brian Goetz and Tim Peierls, Java Concurrency in Practice.
- Kathy Sierra and Bert Bates, Head First Java, 2nd Edition.
- Joshua Bloch, Effective Java, 2nd Edition.
- Craig Walls, Spring in Action, 4th edition.
- Christian Bauer and Gavin King, Java Persistence with Hibernate.
- Bear Bibeault and Yehuda Katz, jQuery in Action.
- Eric Freeman and Bert Bates, Head First Design Patterns.
- Erich Gamma and Richard Helm, Design Patterns: Elements of Reusable Object-Oriented Software.
- Robert C. Martin, Clean Code: A Handbook of Agile Software Craftsmanship.
- Robert Sedgewick and Kevin Wayne, Algorithms, 4th Edition.
- Narasimha Karumanchi, Data Structures and algorithms Made Easy in Java, 2nd edition.
- Jon Bentley, Programming Pearls, 2nd Edition.
- Yegor Bugayenko, Elegant Objects (Vol. 1).
Activity | Semester workload |
---|---|
Lectures | 39 hours |
Laboratory Exercises | 26 hours |
Personal study | 56 hours |
Mid-term exam | 1 hour |
Final exams | 3 hours |
Course total | 125 hours (5 ECTS) |
Written examinations (70%) which includes:
- Multiple choice questions.
- Short-answer questions.
- Problem solving.
Laboratory examination (30%) which includes:
- 3 programming projects.
- Oral examination.
Face-to-face