Lecturer(s)
|
|
Course content
|
Lectures 1. Fundamentals of object oriented programming (OOP) - class and its instance, data items and methods, properties,... 2. Advanced OOP techniques - encapsulation, composition, inheritance and polymorphism 3. Events and delegates, asynchronous call of methods. 4. Basic design patterns - singleton, factory,... 5. Three-tier application architecture, client-server architecture. 6. Visual design of application data structures. 7. Web services and applications. 8. Applications for mobile platforms and cloud environments. 9. Multi-threaded applications. 10. Testing and debugging applications, creating installation packages. Exercises Exercises focus on students' independent work, programming of assigned tasks, which take into account the currently lent topics. In the course of the semester, typical problems from the areas discussed in the lectures are realized. Individual tasks build on each other and demonstrate practically the possibilities and ways to reuse shared code.
|
Learning activities and teaching methods
|
Project teaching, Lecture, Practicum, Task-based study method
|
Learning outcomes
|
The aim of the course is to acquaint students with advanced techniques for application programming - especially with object-oriented programming, principles of events driven software and with basic software engineering concepts.
To complete this course, it is essential for the student to master basic software development techniques in any common higher (procedural) programming language in advance.
|
Prerequisites
|
The subject follows the basic courses of programming and assumes that students have already acquired this knowledge thoroughly.
|
Assessment methods and criteria
|
Combined examination
To obtain course credits, you have to pass a written credit test and pass the practical and theoretical (oral) part of the exam.
|
Recommended literature
|
-
Microsoft Application Architecture Guide. Microsoft Press book, 2009. ISBN 978-0735627109.
-
MILES, R. C# Programming Yellow Book. 2016. ISBN 978-1509301157.
|