Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2025/2026

Practical training in programming

The course is not on the list Without time-table
Code Completion Credits Range Language
18PROP KZ 3 2C Czech
Course guarantor:
Lecturer:
Tutor:
Supervisor:
Department of Software Engineering
Synopsis:

The goal of this course is to understand advanced topics related to programming, code design and software project development. Students will practice pragmatic techniques and principles on concrete real-world examples. Emphasis is put on the review of freely available software tools that can improve the programmers work efficiency and ensure high quality of the final source code.

Requirements:
Syllabus of lectures:

1.Best practices for writing clean code (formatting, naming, structuring)

2.Modular architecture of the program and software project

3.Object-oriented design, SOLID principles and design patterns

4.Principles of defensive programming

5.Principles of agile software development

6.Unit tests design, development and deployment

7.Source code version control with Git

8.Using Git to develop software branching and merging

9.Branching strategies GitFlow, GitHub Flow, GitLab Flow

10.Tools for project build automation GNU Make, CMake, Meson

11.Tools for code quality assurance and bug detection

12.Tools and techniques for code refactoring

13.Documentation generators

Syllabus of tutorials:
Study Objective:
Study materials:

Key literature:

[1] K. Fogel, Producing open source software: How to run a successful free software project, Second Edition, O'Reilly Media, 2022. https://producingoss.com/

[2] R.C. Martin, Clean Code: A Handbook of Agile Software Craftmanship, Prentice Hall 2009. ISBN 978-0132350884.

[3] S. Chacon, B. Straub, Pro Git, Second Edition, Apress, 2014. https://git-scm.com/book/en/v2

Recommended literature:

[1] D. Thomas, A. Hunt, The Pragmatic Programmer, 20th Anniversary Edition, Addison-Wesley, 2019. ISBN 978-0135957059.

[2] M. Fowler, Refactoring: Improving the Design of Existing Code, Second Edition, Addison-Wesley, 2018. ISBN 978-0134757599.

[3] P. Silén, Clean Code Principles and Patterns: A Software Practitioner's Handbook, 2023. ISBN 979-8373835732.

Note:
Further information:
No time-table has been prepared for this course
The course is a part of the following study plans:
Data valid to 2025-03-14
For updated information see http://bilakniha.cvut.cz/en/predmet7675106.html