Course details
Programming .NET and C#
IW5 Acad. year 2019/2020 Summer semester 5 credits
.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, interfaces, GUI elements, windows, menu, controls. Access to the operating system, Threads, Localization and application settings. LINQ. Active web pages, ASP.NET, forms. ASP .NET Active content, XML. Network communication TCP and UDP, Web services. Effective development, Unit testing, Documentation.
Guarantor
Course coordinator
Language of instruction
Completion
Time span
- 26 hrs lectures
- 26 hrs pc labs
Assessment points
- 30 pts labs
- 70 pts projects
Department
Lecturer
Instructor
Course Web Pages
Subject specific learning outcomes and competences
Ability to design and implement applications and distributed systems on the .NET platform.
Ability to implement complex information systems.
Learning objectives
To obtain an overall view of .NET technologies and its programming with C#
Why is the course taught
This course is pretty hard, practically oriented on .NET programming. We tried to choose topics and technologies, which are most used in today corporate worlds. Lectures are made in cooperation with senior developers, team leaders and analytics from many worldwide companies.
Recommended prerequisites
Prerequisite knowledge and skills
Knowledge of object-oriented programming techniques.
Study literature
- Charles Petzold - Programming Microsoft Windows With C#
- Simon Robinson - C# Professional Programming
- Erich Gunnerson - A Programmer's Introduction to C#
- 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.
- Albahari, Joseph, and Ben Albahari. C# 7.0 in a Nutshell : the definitive reference. Sebastopol, CA: O'Reilly Media, 2017.
- 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
Syllabus of lectures
- Introduction .NET Framework, .NET CORE a .NET Standard
- Object Oriented Programming C# (Ing. Tibor Jašek, MSP)
- ASP.NET Core Web API (Ing. Roman Jašek, Microsoft MVP)
- Inversion of Control, configuration, Middleware, Logging (Adam Štěpánek, MSP)
- Web - MVC (Ing. Tibor Jašek, MSP)
- How to Write Tests (Ing. Jiří Pokorný, Solarwinds)
- Test Driven Development (Ing. Jiří Pokorný, Solarwinds)
- Microsoft Azure (Ing. Roman Jašek, Microsoft MVP)
- Software Architectures in C# (Martin Dybal, Microsoft MVP)
- Design Patterns in C# (Martin Dybal, Microsoft MVP)
- Xamarin (Ing. Roman Jašek, Microsoft MVP)
- C# 8, .Net Core / Roslyn / DotVVM / .Net on Linux
Progress assessment
All forms of teaching are optional. To pass the course you need to make and to defend projects and got at least 50 points of 100.
Controlled instruction
All forms of teaching are optional. PC labs can be individually substituted by consultations on exceptional cases.
- Project evaluation is divided into two parts.
- Each part will be evaluated separately and feedback given to students for further improvements in the following phases.
- Phases are marked by 30, 40 points.
- Final project (the second phase) evaluation is an oral defence.
Exam prerequisites
All forms of teaching are optional. To pass the course you need to make and to defend projects and got at least 50 points of 100.
Course inclusion in study plans