Skip to main content
Skip header

C# Programming II

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

Course Unit Code460-2061/01
Number of ECTS Credits Allocated4 ECTS credits
Type of Course Unit *Choice-compulsory type A
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
460-2057C# Programming I
Name of Lecturer(s)Personal IDName
RAD79Ing. Michal Radecký, Ph.D., MBA
Summary
Students will extend the knowledge of C # programming, taking into account more sophisticated programming approaches and specific implementation scenarios. The subject covers higher level that focuses on domains such as communication, structured data or different operating environments in more detail.
Learning Outcomes of the Course Unit
The aim of the subject is to extend the knowledge of C #. The goal is that student will be able to use specific language constructs in relation to specific technologies and usages, including the relation to different application environments.

Knowledge and skills:

- collections and structured data types, LINQ approach to work with these data
- Lambda expressions
- text structured data, serialization (XML, JSON)
- network communication (HTTP, TCP)
- parallel programming using the basic threads concept
- localization and internationalization, security of text data
- Windows Service
- Windows Form
- Windows Universal Apps (XAML)
- Xamarin for mobile application development

After completing the course, the student should be able to design and implement a solution with respect to the knowledge of the oriented programming approach using the latest C# language capabilities. At the same time, they also will able to design and implement specific applications with full utilization of the .NET platform.
Course Contents
Presentations cover following topics that are relevant to knowledge and abilities defined for this subject.

1. Assemblies, Reflection
2. Asynchronous principles (async, await)
3. Windows Forms
4.,5. Windows Presentations Foundations
6. Working with databases (Dapper, ORM, LINQ)
7. Working with text and data (regular expressions, JSON, XML, Streams)
8. Networking (HTTPClient, TCP, UDP, mailing)
9. ASP.NET Core - architecture, middleware, services
10. ASP.NET Core - simple (web API, Razor, backgroundservice)
11. ASP.NET Core - MVC
12. gRPC, SignalR, Websockets
13. Internationalization, localization
14. Functional aspects of C#


Practical lectures are closely related to topics mentioned in a given week. They extend the information on practical utilization of programming techniques.
Recommended or Required Reading
Required Reading:
[1] Albahari, Joseph, and Ben Albahari. C# 7.0 in a nutshell : the definitive reference. Sebastopol, CA: O'Reilly,
2018. Print. ISBN: 1491987650

[2] Price, Mark J. C# 7 and .NET Core modern cross-platform development : create powerful cross-platform applications
using C# 7, .NET Core, and Visual Studio 2017 or Visual Studio Code. Birmingham, UK: Packt Publishing, 2017. Print.
ISBN: 1787129551
[1] Albahari, Joseph, and Ben Albahari. C# 7.0 in a nutshell : the definitive reference. Sebastopol, CA: O'Reilly,
2018. Print. ISBN: 1491987650

[2] Price, Mark J. C# 7 and .NET Core modern cross-platform development : create powerful cross-platform applications
using C# 7, .NET Core, and Visual Studio 2017 or Visual Studio Code. Birmingham, UK: Packt Publishing, 2017. Print.
ISBN: 1787129551
Recommended Reading:
[1] Troelsen, Andrew, and Philip Japikse. Pro C# 7 With .net and .net Core. City: Apress, 2018. Print. ISBN: 1484230175
[1] Troelsen, Andrew, and Philip Japikse. Pro C# 7 With .net and .net Core. City: Apress, 2018. Print. ISBN: 1484230175
Planned learning activities and teaching methods
Lectures, Tutorials
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
        Projekt 1Project30 15
        Projekt 2Project30 15
        Test 1Written test20 10
        Test 2Written test20 10