Course detail

Programming Techniques

FSI-SPTAcad. year: 2024/2025

The course focuses on presenting advanced programming topics using C# and the .NET platform in the Visual Studio IDE. Concepts of both theoretical and practical nature are introduced. At the end of the course, the knowledge is applied to solve real-world problems.

Language of instruction

Czech

Number of ECTS credits

3

Mode of study

Not applicable.

Entry knowledge

Basic computer skills, basic knowledge of C# programming language and Visual Studio IDE.

Rules for evaluation and completion of the course

The evaluation of the course consists of points for the semester project (presentation of a functional program in C# - 70%) and points for independent tasks (30%) assigned during the semester. The condition for getting the credit is obtaining at least 50% of the points from the semester project. Additional points can be awarded for an active approach during the course.


Attendance at lectures is recommended, attendance at the exercise is compulsory. Classes are held according to the weekly schedule. The material discussed in the exercises corresponds to the current topic in the lecture according to the syllabus. The substitution of missed exercises is entirely at the discretion of the instructor.

Aims

The aim of the course is to introduce students to programming techniques and concepts that they will use to create algorithms and their implementations in applications created using the C# programming language. Further the aim is to make the students familiar with the concepts of object oriented programming applied to the design and implementation of programs.


Students will gain advanced knowledge of C#, object-oriented programming and algorithmization of problems. Students are able to apply this knowledge in the development of programs to solve real-world tasks.

Study aids

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Albahari, J.: C# 10 in a Nutshell: The Definitive Reference, O'Reilly Media; 1st edition (March 15, 2022), ISBN 978-1098121952. (EN)
Oficiální online dokumentace jazyka C#: https://learn.microsoft.com/en-us/dotnet/csharp/ (EN)
Price, M.: C# 11 and .NET 7 – Modern Cross-Platform Development Fundamentals; Packt Publishing; 7th ed. edition (November 8, 2022), ISBN 978-1803237800 (EN)

Recommended reading

Not applicable.

Classification of course in study plans

  • Programme B-MAI-P Bachelor's 1 year of study, summer semester, compulsory

  • Programme C-AKR-P Lifelong learning

    specialization CLS , 1 year of study, summer semester, elective

Type of course unit

 

Lecture

13 hod., optionally

Teacher / Lecturer

Syllabus

1. Data structures, collections.
2. Programming paradigms, programming patterns.
3. OOP principles.
4. Application of interfaces.
5. Working with libraries.
6. Introduction to GUI, events.
7. Serialization and deserialization of objects, working with data.
8. LINQ.
9. Generic data type.
10. Introduction to parallel programming.
11. Code testing.
12. Project solving.
13. Project solving.

Computer-assisted exercise

26 hod., compulsory

Teacher / Lecturer

Syllabus

The exercises are aimed at practice of the material covered in the topics on lectures, see the lectures outline. Emphasis is placed on the ability to work independently, i.e. to develop a simple application, often as part of independent tasks.