Course details

Programming .NET and C#

IW5 Acad. year 2024/2025 Winter semester 5 credits

Current academic year

Programming in .NET and C#. The course follows the course ICS, in which the basics of working with the C# language and the development of desktop applications are taught. IW5 focuses on other areas of development in C#, especially web development. The main content of the first part of the course and the project is the development of a web application, which consists of a server side, where the course focuses on development using the REST API using ASP.NET Core, Swagger, Open API. It then moves to the side of the web application that uses the created API and continues to work with Blazor technology. Furthermore, the course focuses on the automation of testing and deployment of web applications. In the second part of the semester, the course focuses on examples of other areas of development in C#, such as the development of mobile applications, games, alternative web frameworks, or advanced topics related to application architecture.

Guarantor

Course coordinator

Language of instruction

Czech, English

Completion

Classified Credit

Time span

  • 26 hrs lectures
  • 12 hrs seminar
  • 14 hrs projects

Assessment points

  • 50 pts projects

Department

Lecturer

Instructor

Learning objectives

To obtain an overall view of .NET technologies and its programming with C#

 

Ability to design and implement applications and distributed systems on the .NET platform.
Ability to implement complex information systems.

Recommended prerequisites

Prerequisite knowledge and skills

Knowledge of object-oriented programming techniques.

Study literature

  • Programátorské večery na ČVUT, http://avc.sh.cvut.cz/archiv/index.php?id=104&select=Programátorské%20večery
  • Albahari, Joseph, and Ben Albahari. C# 7.0 in a Nutshell : the definitive reference. Sebastopol, CA: O'Reilly Media, 2017.
  • Posadas, Marino. Mastering C# and .NET framework : deep dive into C# and .NET architecture to build efficient, powerful applications. Birmingham: Packt, 2016.
  • Price, Mark J. C# 7.1 and .NET Core 2.0 - Modern Cross-Platform Development - Third Edition. Birmingham: Packt Publishing, 2017.
  • Rabaey, Jan M., Anantha P. Chandrakasan, and Borivoje Nikolic. Digital integrated circuits : a design perspective. Upper Saddle River, N.J: Pearson Education, 2003.

Fundamental literature

  • Damien Watkins - Programming in the .NET EnvironmentKnihovna MSDN http://msdn.microsoft.com/cs-cz/library
  • Albahari, Joseph, and Ben Albahari. C# 7.0 in a Nutshell : the definitive reference. Sebastopol, CA: O'Reilly Media, 2017.
  • Posadas, Marino. Mastering C# and .NET framework : deep dive into C# and .NET architecture to build efficient, powerful applications. Birmingham: Packt, 2016.

Syllabus of lectures

  1. Introduction, introduction of the subject, project, setup environment (Roman Jašek)
  2. ASP.NET Core Web API, controller, swagger, Postman, middleware (Michal Mrnuštík)
  3. Testing (Michal Tichý)
  4. Web - Blazor (Roman Jasek)
  5. Web - frontend (Maroš Janota)
  6. Web - connection to API (Michal Tichý)
  7. Progressive Web Apps (Roman Jasek)
  8. .NET MAUI (Roman Jasek)
  9. Azure (Roman Jasek)
  10. DotVVM (Tomas Herceg)
  11. Unity (Vojtech Brůža)
  12. Clean Architecture (Martin Dybal)

Syllabus of seminars

  1. Minimal API in .NET 6, routing (Roman Jašek)
  2. Inversion of Control, configuration, localization (Michal Mrnuštík)
  3. CI / CD, deployment to Azure (Michal Tichý)
  4. Web - Blazor (Roman Jasek)
  5. Web (Maroš Janota / Roman Jašek)
  6. Is this how you write a project ?! (Roman Jasek)

Progress assessment

  • Attendance on any form of schooling is optional
  • Obtain at least 50% of a apoint from orverall project evaluation

 

All forms of teaching are optional. PC labs can be individually substituted by consultations on exceptional cases.

How to contact the teacher

The official contact channel is an email sent from the faculty address, addressed to the teacher according to the course card.

Schedule

DayTypeWeeksRoomStartEndCapacityLect.grpGroupsInfo
Mon lecture 1., 3., 4., 8., 9., 13. of lectures G202 14:0015:5080 2BIA 2BIB 3BIT xx Jašek
Mon lecture 2024-09-23 G202 14:0015:5080 2BIA 2BIB 3BIT xx Mrnuštík
Mon lecture 2024-10-14 G202 14:0015:5080 2BIA 2BIB 3BIT xx Janota
Mon lecture 2024-10-21 G202 14:0015:5080 2BIA 2BIB 3BIT xx Tichý
Mon lecture 2024-11-18 G202 14:0015:5080 2BIA 2BIB 3BIT xx Dybal
Mon lecture 2024-11-25 G202 14:0015:5080 2BIA 2BIB 3BIT xx Pokorný
Mon lecture 2024-12-02 G202 14:0015:5080 2BIA 2BIB 3BIT xx Janska
Mon seminar 1., 3. of lectures L314 16:0017:5030 2BIA 2BIB 3BIT xx Jašek
Mon seminar 6., 8., 9., 10., 11., 12., 13. of lectures L314 16:0017:5030 2BIA 2BIB 3BIT xx
Mon seminar 2024-09-23 L314 16:0017:5030 2BIA 2BIB 3BIT xx Mrnuštík
Mon seminar 2024-10-07 L314 16:0017:5030 2BIA 2BIB 3BIT xx Tichý
Mon seminar 2024-10-14 L314 16:0017:5030 2BIA 2BIB 3BIT xx Janota

Course inclusion in study plans

  • Programme BIT, 2nd year of study, Elective
  • Programme BIT (in English), 2nd year of study, Elective
Back to top