Course detail

Programming .NET and C#

FIT-IW5Acad. year: 2020/2021

.NET platform introduction. Precompiled code. Platform independence, MSIL, safe code. C# language: language elements, types, classes, instances, attributes, methods, inheritance, virtual methods, interfaces, overloading, abstract classes, messages, events. WPF and WinForms, interfaces, GUI elements, windows, menu, controls. WPF: styles, sources, data binding. Access to the operating system, Threads, Localization and application settings. ADO.NET and data access, SQL queries, DataSet, DataReader. Entity Framework, LINQ. Active web pages, ASP.NET, forms. ASP .NET Active content, XML. Network communication TCP and UDP, WCF, Web services. Effective development, Unit testing, Documentation.

Language of instruction

Czech

Number of ECTS credits

5

Mode of study

Not applicable.

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

Not applicable.

Planned learning activities and teaching methods

Not applicable.

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

Not applicable.

Work placements

Not applicable.

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

Not applicable.

Prerequisites and corequisites

Basic literature

Damien Watkins - Programming in the .NET EnvironmentKnihovna MSDN http://msdn.microsoft.com/cs-cz/library

Recommended reading

Albahari, Joseph, and Ben Albahari. C# 7.0 in a Nutshell : the definitive reference. Sebastopol, CA: O'Reilly Media, 2017.
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.
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.
Simon Robinson - C# Professional Programming

Classification of course in study plans

  • Programme IT-BC-3 Bachelor's

    branch BIT , 2 year of study, winter semester, elective

  • Programme BIT Bachelor's 2 year of study, winter semester, elective

Type of course unit

 

Lecture

26 hod., optionally

Teacher / Lecturer

Syllabus

  1. Úvod, představení předmětu, projektu, setup prostředí (Roman Jašek)
  2. Státní svátek
  3. ASP.NET Core Web API, controller, swagger, Postman, middleware (Michal Mrnuštík)
  4. Testování (Michal Tichý)
  5. Web - Blazor (Roman Jašek)
  6. Web - frontend (Maroš Janota)
  7. Web - napojení na API (Michal Tichý)
  8. Progressive Web Apps (Roman Jašek)
  9. .NET MAUI (Roman Jašek)
  10. Clean Architecture (Martin Dybal)
  11. Unity 
  12. DotVVM 
  13. Téma na přání studentů

Exercise in computer lab

26 hod., compulsory

Teacher / Lecturer

Syllabus

  1. Minimal API v .NET 6, routing (Roman Jašek)
  2. Inversion of Control, konfigurace, lokalizace (Michal Mrnuštík)
  3. CI/CD, nasazování do Azure (Michal Tichý)
  4. Web - Blazor (Roman Jašek)
  5. Web (Maroš Janota/Roman Jašek)
  6. Takhle napište projekt?! (Roman Jašek)