Course detail

Selected Chapters from Programming

FSI-0VP Acad. year: 2027/2028 Winter semester

The goal is to to master the selected parts of programming. The idea is to complete missing input knowledge to improve the ability of candidates to right real programmes during their further study and practice.
The course "Selected Chapters from Programming" allows students to gain knowledge of algorithms and data structures in a higher extent than in the basic compulsory courses.

Language of instruction

Czech

Number of ECTS credits

4

Entry knowledge

Ability to operate a computer and knowledge of common operations with files is a prerequisite. At least partial knowledge of programming in any language is an advantage but not essential.

Rules for evaluation and completion of the course

Course credit is awarded based on active participation in practical classes and successful completion of the assigned task.

Attendance at practical classes is monitored. Missed classes may be compensated for by completing assigned tasks.

Aims

The goal is to to master the selected parts of programming. The idea is to complete missing input knowledge to improve the ability of candidates to right real programmes during their further study and practice.
The course "Selected Chapters from Programming" allows students to gain knowledge of algorithms and data structures in a higher extent than in the basic compulsory courses.

The study programmes with the given course

Programme N-AIŘ-P: Applied Computer Science and Control, Master's, compulsory

Type of course unit

 

Lecture

26 hours, optionally

Syllabus

Computer-assisted exercise

26 hours, compulsory

Syllabus

General topics are subject to current trends in software development.



  1. Principles of Modern Software Development. Fundamental approaches, tools, trends, and interesting developments in software engineering.

  2. Containerization and Runtime Environment Management. Providing isolated and reproducible environments, configuring and managing containerized applications, for example using Docker and Docker Compose.

  3. Version Control and Team Collaboration. Tracking changes, maintaining development history, sharing source code, parallel development, and code review, for example using Git.

  4. Software Quality and Testing. Principles of developing high-quality, maintainable, and secure software, testing methods, automated testing, and static code analysis.

  5. Software Implementation and Development Automation. Design and implementation practices, code organization, automated building, testing, and software distribution, for example using CI/CD.

  6. Software System Architecture. Principles of software architecture design, architectural styles, component organization, and communication between components.

  7. Deployment, Operation, and Maintenance of Software Systems. Preparing runtime environments, configuration, application deployment, monitoring, diagnostics, updates, and ensuring operational reliability.

  8. Artificial Intelligence in Software Development. Using AI in software design, implementation, testing, and management, integrating AI tools and agents, for example through the Model Context Protocol (MCP).

  9. –13. Current Trends in Software Development. An overview of current technologies, tools, and methods in modern software engineering, including the use of artificial intelligence, autonomous AI agents, and emerging approaches to software development automation.