Special Topics in Software Engineering:

Software Development with C#

339.341 1KV Mössenböck Block Begin: 23.03.2018

Overview

C# is a mixture of Java, C++ and Visual Basic. It combines Java's type safety (type checking, garbage collection) with the power and flexibility of C++ (e.g. operator overloading, low-level operations). In addition to that it has some new features for component-based programming (properties and events), a kind of function pointers (delegates), reference parameters, stack objects and many other useful things. It also includes features of functional programming languages (e.g. lambda expressions) as well as SQL-like queries on memory data structures or XML (LINQ).

As a companion to this course we recommend to attend also the course Special Topics: The .NET Technology in which the .NET architecture and the APIs for Windows, Web and Database programming in C# are explained.

Contents

  1. Overview
  2. Symbols
  3. Types
  4. Expressions
  5. Declarations
  6. Statements
  7. Classes and structs
  8. Inheritance
  9. Interfaces
  10. Delegates
  11. Exceptions
  12. Namespaces and assemblies
  13. Attributes
  14. Threads
  15. XML comments
  16. Native calls
  17. Pointers
  18. Class library
  19. C# 2.0
  20. C# 3.0
  21. C# 4.0
  22. C# 5.0
  23. C# 6.0
  24. C# 7.0

Handouts

Students attending this course can download the handouts as PDF documents from the KUSSS web page of this course.

Dates

Date Time Room
Fr 23.03.2018 12:45-17:00 HS 3
Sa 24.03.2018 08:30-11:45 HS 3
Fr 13.04.2018 12:00-17:00 HS 3

Exam and Project

There will be a written exam on Friday, May 18, 2018, 13:00-14:00 in HS 2.

In order to pass the course you also have to implement a small C# project. The topic of this project can be freely chosen by you. The only requirement is that the project has at least 250 lines of code.

The project has to be presented on your own notebook at the SSW institute (either to Prof. Mössenböck or to DI Weninger). You can combine the project of this course with the one of the .NET course. The submission deadline of both courses is on the same day and the same time. You can submit both projects either at the C# course (Mössenböck/Weninger) or at the .NET course (Schabus/Leopoldseder).

Date Time Names Room
Project delivery: Fr 18.05.2018 13:15-14:15
14:15-15:00
15:00-15:45
A - J
K - P
Q - Z
S3 206, S3 209

Literature

Online Resources and Software Downloads