Application development using C# programming language

Data is displayed for academic year: 2023./2024.

Course Description

The goal of this course is to introduce students to the world of modern software development using C# programming language. Students will familiarize themselves with the development of server applications using the ASP.NET Core platform, with special attention given to patterns, methods and technologies inevitable in practice. The second part of the course will deal with client applications and the consumption of the server and its functionality. The focus will be on web clients (HTML, CSS, JavaScript), but students will be introduced to the technologies used for the development of native mobile clients (Xamarin, Windows 10, XAML) as well. Through the semester, students will have the opportunity to use the Microsoft Azure platform to accommodate their final project in the cloud.

Study Programmes

University undergraduate
Skills (3. semester) (5. semester)
Skills (3. semester) (5. semester)
[FER2-HR] Computer Engineering - module
Skills (5. semester)
[FER2-HR] Computer Science - module
Skills (5. semester)
[FER2-HR] Computing - study
Skills (3. semester)
[FER2-HR] Control Engineering and Automation - module
Skills (5. semester)
[FER2-HR] Electrical Engineering and Information Technology - study
Skills (3. semester)
[FER2-HR] Electrical Power Engineering - module
Skills (5. semester)
[FER2-HR] Electronic and Computer Engineering - module
Skills (5. semester)
[FER2-HR] Electronics - module
Skills (5. semester)
[FER2-HR] Information Processing - module
Skills (5. semester)
[FER2-HR] Software Engineering and Information Systems - module
Skills (5. semester)
[FER2-HR] Telecommunication and Informatics - module
Skills (5. semester)
[FER2-HR] Wireless Technologies - module
Skills (5. semester)

Learning Outcomes

  1. apply C# programming language and related technologies in designing simple programs
  2. apply C# programming language and related technologies in designing server-side applications
  3. apply C# programming language and related technologies in designing client applications
  4. apply C# programming language and related technologies in designing web services
  5. apply C# programming language and related technologies in designing cloud applications
  6. prepare applications for deployment

Forms of Teaching

Lectures

Lectures

Programming Exercises

Project implementation

Week by Week Schedule

  1. Introduction to .NET platform
  2. Introduction to C# programming language
  3. Advanced C# topics (LINQ, TPL, async await, generics, lambda functions…)
  4. Introduction to ASP.NET Core
  5. ASP.NET Core and Entity Framework
  6. ASP.NET Core infrastructure topics - Identity, DI, logging, configurations...
  7. ASP.NET Core - Cache, Session, Razor revisited, Web API
  8. Midterm
  9. Midterm
  10. Web client development (HTML, JS, CSS)
  11. Microsoft Azure
  12. Introduction to Windows 10
  13. Introduction to Xamarin.Forms
  14. Empty (project)
  15. Empty (project)

Literature

John Sharp (2014.), Microsoft Visual C# 2013 Step by Step, Microsoft Press
Andrew Troelsen (2012.), Pro C# 5.0 and the .NET 4.5 Framework, APress

For students

General

ID 132841
  Winter semester
4 ECTS
L0 English Level
L1 e-Learning
30 Lectures
0 Seminar
15 Exercises
0 Laboratory exercises
0 Project laboratory
0 Physical education excercises

Grading System

Excellent
Very Good
Good
Sufficient