Skip to main content
Skip header

Instruments for the Implementation of Control and Monitoring Systems

* Exchange students do not have to consider this information when selecting suitable courses for an exchange stay.

Course Unit Code450-2080/01
Number of ECTS Credits Allocated4 ECTS credits
Type of Course Unit *Optional
Level of Course Unit *First Cycle
Year of Study *Second Year
Semester when the Course Unit is deliveredSummer Semester
Mode of DeliveryFace-to-face
Language of InstructionCzech
Prerequisites and Co-Requisites
PrerequisitiesCourse Unit CodeCourse Unit Title
450-2079Basics of Algorithms and Programming
Name of Lecturer(s)Personal IDName
KON430doc. Ing. Jaromír Konečný, Ph.D.
Summary
The subject is aimed at extending the knowledge in the field of implementation and programming. It introduces the necessary implementation tools and techniques and provides the basis for designing and implementing the software system in particular application areas. When applying knowledge, emphasis is placed on autonomy and word assignment.
Exercises are geared to advanced techniques of implementation and programming using modern ways of designing and implementing software. In the exercises the students will become acquainted with the tools of software creation, which enable today's modern programming languages.
Learning Outcomes of the Course Unit
Subject Implementation of Technical Tasks directly follows the subject of Algorithmization and Programming Basics. Learning outcomes of the course is to deepen students' knowledge in the field of technical problems in different application levels. After completing the course, students will be able to know the general implementation techniques and learn the basics of software design. Emphasis is placed on the ability to create a program based on a word assignment.
Course Contents
1. Introduction to the implementation of technical tasks, motivation
2. Program paradigms, basic approaches to program design
3. Composite data types, classes, instances, and properties
4. Dynamic fields, creation of new data types with general data type - generics,
5. Inheritance, overloading methods, polymorphism
6. Virtual methods, abstract methods, abstract classes and interfaces
7. Exceptions, exception properties, propagation of exceptions, exception handling, exception throwing.
8. Principle of interruption, thread and process
9. Parallel programming, cooperative and preemptive multitaksing, scheduler
10. Synchronization tools and synchronization tasks (mutex, semaphore, signal, barrier, readers writers, critical section, producer consumer)
11. Data repositories and access to them
12. Tools for designing specification and documentation of program systems
13. Methods of Design of Program Systems

Laboratory Exercises will take place in these areas
• Sample compound data types, classes, instances, and properties
• Programmatic demonstrations of dynamic fields, creation of new data types with general data type - generics,
• Sample role inheritance, overloading methods, polymorphism
• Sample role of virtual method, abstract methods, abstract classes and interfaces
• Sample program, exception properties, exception propagation, exception handling, exception exception.
• Sample application of parallel programming
• Creating basic synchronization tasks
• A sample with a data repository
Recommended or Required Reading
Required Reading:
[1] WEISFELD, Matt A. [i]The object-oriented thought process[/i]. Fourth edition. Upper Saddle River, NJ: Addison-Wesley, 2013. ISBN 9780321861276.
[2] [i]C# 6.0 and the .NET 4.6 Framework.[/i] Seventh Edition. New York: apress, 2015. ISBN 9781484213339.
[1] WEISFELD, Matt A. [i]The object-oriented thought process[/i]. Fourth edition. Upper Saddle River, NJ: Addison-Wesley, 2013. ISBN 9780321861276.
[2] [i]C# 6.0 and the .NET 4.6 Framework.[/i] Seventh Edition. New York: apress, 2015. ISBN 9781484213339.
[3] BORY, Pavel. [i]C# bez předchozích znalostí[/i]. Brno: Computer Press, 2016. ISBN 9788025146866.
Recommended Reading:
[1] MEYER, Bertrand. [i]Object-oriented software construction[/i]. 2nd ed. Upper Saddle River, N.J.: Prentice Hall PTR, c1997. ISBN 978-0136291558.
[2] YEAGER, Dorian P. [i]Object-oriented programming languages and event-driven programming[/i]. Dulles, Virginia: Mercury Learning and Information, 2014. ISBN 9781936420377.
[1] MEYER, Bertrand. [i]Object-oriented software construction[/i]. 2nd ed. Upper Saddle River, N.J.: Prentice Hall PTR, c1997. ISBN 978-0136291558.
[2] YEAGER, Dorian P. [i]Object-oriented programming languages and event-driven programming[/i]. Dulles, Virginia: Mercury Learning and Information, 2014. ISBN 9781936420377.
[3]VYSTAVĚL, Radek. [i]Moderní programování: učebnice pro pokročilé.[/i] Ondřejov: moderníProgramování, 2011. ISBN 978-80-903951-7-6.
Planned learning activities and teaching methods
Lectures, Individual consultations, Experimental work in labs, Teaching by an expert (lecture or tutorial)
Assesment methods and criteria
Task TitleTask TypeMaximum Number of Points
(Act. for Subtasks)
Minimum Number of Points for Task Passing
Graded creditGraded credit100 (100)51
        ProjectSemestral project50 15
        Final testWritten test50 15