Course detail
Programming .NET and C#
FIT-IW5Acad. year: 2022/2023
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.
Language of instruction
Number of ECTS credits
Mode of study
Guarantor
Department
Learning outcomes of the course unit
Ability to design and implement applications and distributed systems on the .NET platform.
Ability to implement complex information systems.
Prerequisites
Knowledge of object-oriented programming techniques.
Co-requisites
Planned learning activities and teaching methods
Assesment methods and criteria linked to learning outcomes
- Attendance on any form of schooling is optional
- At least 1 point of each project evaluation part
- Obtain at least 50% of a apoint from orverall project evaluation
Course curriculum
Work placements
Aims
To obtain an overall view of .NET technologies and its programming with C#
Specification of controlled education, way of implementation and compensation for absences
All forms of teaching are optional. PC labs can be individually substituted by consultations on exceptional cases.
Recommended optional programme components
Prerequisites and corequisites
- recommended prerequisite
The C# Programming Language
Basic literature
Damien Watkins - Programming in the .NET EnvironmentKnihovna MSDN http://msdn.microsoft.com/cs-cz/library
Posadas, Marino. Mastering C# and .NET framework : deep dive into C# and .NET architecture to build efficient, powerful applications. Birmingham: Packt, 2016.
Recommended reading
Albahari, Joseph, and Ben Albahari. C# 7.0 in a Nutshell : the definitive reference. Sebastopol, CA: O'Reilly Media, 2017.
Erich Gunnerson - A Programmer's Introduction to C#
Charles Petzold - Programming Microsoft Windows With C#
Posadas, Marino. Mastering C# and .NET framework : deep dive into C# and .NET architecture to build efficient, powerful applications. Birmingham: Packt, 2016.
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.
Price, Mark J. C# 7.1 and .NET Core 2.0 - Modern Cross-Platform Development - Third Edition. Birmingham: Packt Publishing, 2017.
Programátorské večery na ČVUT, http://avc.sh.cvut.cz/archiv/index.php?id=104&select=Programátorské%20večery
Programátorské večery na ČVUT, http://avc.sh.cvut.cz/archiv/index.php?id=104&select=Programátorské%20večery
Rabaey, Jan M., Anantha P. Chandrakasan, and Borivoje Nikolic. Digital integrated circuits : a design perspective. Upper Saddle River, N.J: Pearson Education, 2003.
Rabaey, Jan M., Anantha P. Chandrakasan, and Borivoje Nikolic. Digital integrated circuits : a design perspective. Upper Saddle River, N.J: Pearson Education, 2003.
Simon Robinson - C# Professional Programming
Elearning
Classification of course in study plans
Type of course unit
Lecture
Teacher / Lecturer
Syllabus
- Introduction, introduction of the subject, project, setup environment (Roman Jašek)
- ASP.NET Core Web API, controller, swagger, Postman, middleware (Michal Mrnuštík)
- Testing (Michal Tichý)
- Web - Blazor (Roman Jasek)
- Web - frontend (Maroš Janota)
- Web - connection to API (Michal Tichý)
- Progressive Web Apps (Roman Jasek)
- .NET MAUI (Roman Jasek)
- Azure (Roman Jasek)
- DotVVM (Tomas Herceg)
- Unity (Vojtech Brůža)
- Clean Architecture (Martin Dybal)
Fundamentals seminar
Teacher / Lecturer
Syllabus
- Minimal API in .NET 6, routing (Roman Jašek)
- Inversion of Control, configuration, localization (Michal Mrnuštík)
- CI / CD, deployment to Azure (Michal Tichý)
- Web - Blazor (Roman Jasek)
- Web (Maroš Janota / Roman Jašek)
- Is this how you write a project ?! (Roman Jasek)
Elearning