Theoretical foundations of informatics
- Propositional logic. Syntax, semantics, derivation system of propositional logic, proofs in propositional logic, truthfulness and provability of logic formulas. (IB000)
- Functions and recursion. Recursive function definitions, recursive data types (lists, trees), functions over recursive data types. (IB114)
- Data structures and their implementation. Abstract data types: list, array, stack, queue, binary tree, generic tree, search tree. Implementation of binary and search trees and operations over them. (IB113, IB114)
- Graphs. Graph types, trees, vertices, oriented graphs, graph representation. Depth and width graph search algorithms and their use. Context components. (IB114)
- Sorting. Basic algorithms, algorithms for sorting by heap, merging, splitting. (IB114)
- Regular languages. Regular languages, regular grammars, regular expressions, finite automata. Properties of regular languages, relation between finite automata and regular grammars. (IB110)
- Finite automata. Definition, finite automaton construction, finite automaton minimization, nondeterministic finite automaton to deterministic automaton. (IB110)
- Computability. Turing machine as a universal computational model. Stop problem. Decidability and partial decidability, undecidability. Diagonalization. (IB110)
- Complexity. Complexity of algorithm versus problem complexity. Complexity classes (P, NP, PSPACE) and relations between them, examples of problems from individual classes. Difficulty and completeness of the problem in a given class, polynomial reduction of problems, NP-complete problems. (IB110)
Program, computing and information systems
- Computational systems I. Numerical systems, relations between systems, display of integer in computer, arithmetic. Codes, internal, external, detection and correction. Processors, their parameters and architectures. (PB150)
- Programming. Structured programming in imperative language, data and control structures of programming languages, data types, procedures and functions, block and modular structure of a program. (IB113).
- Operating system. Operating system architectures, operating system interfaces. Processes, process synchronization, deadlocks, and deadlock protection methods. Working with memory, logical and physical address space, memory management and its execution. Planning on operating systems. (PB153)
- Computer networks. Topology, access methods and computer network architectures (Ethernet, Fast Ethernet, Token-ring, ATM, etc.). Wireless communication technology. OSI model. TCP / IP. Interconnection of computer networks and routing of information. (PB156)
- Database I. Relational model, relational scheme, relational schema keys, integrity constraints, relational algebra, relation joining. (PB168)
- Database II. SQL Query Language (select statement, relation join, aggregate function). Query Processing. Basic principles, example. Indexing. Transaction. Transaction processing properties.
- Software Engineering. Software development. Requirements specification, system analysis and design, testing, verification and validation, system operation. UML usage in software development. (PB007)
Didactics of Informatics (only for one-study plan)
The answer to the question from IT didactics must include: inclusion of the topic in the curriculum of the subject taught, specification of the input knowledge of the pupil, clarification of what information the pupil needs to know safely after the topic (depending on the type of school) and which information is intended as an extension of the subject matter for talented pupils, motivational examples, presentation of the topic using appropriate teaching methods and appropriate demonstration examples, ways of verifying knowledge. When evaluating the answers to questions from computer science didactics, in addition to professional accuracy will be taken into account the form of interpretation (with regard to the teaching of the lesson); the interpretation must respect the principles and principles of general didactics.
- Development of computer technology. Origin and development of basic programming languages. Future trends in computing.
- Fundamentals of algorithmization. Algorithm and its properties, design, way of writing and implementation of algorithm. Programming languages, their division. A good choice of programming language to solve the problem.
- Basic data types, their distribution. Visual representation of data structures. Possibilities of their use for solving a specific problem. Dynamic data structures, their realization and operations over them.
- Program structure. Program control structures, their syntax and semantics. Structured and object-oriented programming. Procedures and functions, methods of passing parameters. Recursion.
- Basic algorithms. Searching, sorting. Program run visualization, program debugging and testing principles. Complexity of algorithms and optimization of programs.
- Computer networks. Computer networks, Internet and their services. Division of computer networks. Basic rules of security in computer networks, privacy. Copyright in relation to software and ICT. Working with information, searching, sorting and storing it.
- Computer Architecture. Basic principles and models of computer system. Processors, memories and other devices of the modern computer system. Relation of technical equipment, operating system and application software.
- IT Management. Basic software from the user's point of view. Control of application software. Servicing and administration of network applications and operating system.
- Subject "Informatics and Computer Science in Elementary / High School". Objectives and syllabus of the subject. Curriculum for the school level. The division of the curriculum into grades depending on the expected length of informatics teaching, the continuity with other subjects. Concept of classroom equipment and school computing. Appropriate equipment depending on the type and focus of the school. A comprehensive plan for developing and using ICT at school.
- IT thinking. Creativity and divergent thinking. Design a divergent thinking test with your pupils. Are pupils with more divergent thinking more popular or less popular with teachers - and why?
- General pedagogy. Method of interpretation. Its advantages and disadvantages. The pace of interpretation. Maintaining the attention of pupils. Converting information from short-term memory to long-term memory. The technique of interpretation.