Web Programming ASP Course code: I64042T | 7 ECTS credits

Basic information
Level of Studies: Undergraduate applied studies
Year of Study:
Semester: 8
Requirements:
Goal: Modular, multi tier architecture software system design delivered to users via web using .NET technologies.
Outcome: Students should be able to both design and implement a multi tier software system using .NET technologies. Since the primary aspect is modular, component based architecture, student will be able to compose the system out of layers communicating with each other. In that sense, student will create several layers, such as database access, business logic, implementation, UI and API layers using appropriate .NET tools.
Contents of the course
Theoretical instruction:
  1. Introduction to modular (layered) architecture theory and .NET tools
  2. Data access layer design
  3. Data access layer implementation and interaction using Entity Framework
  4. Entity Framework advanced usage with LINQ
  5. REST API using .NET Core
  6. Multi tier architecture construction
  7. Application layer design and CQRS
  8. Implementation level design
  9. JWT based authroization and authentication
Practical instruction (Problem solving sessions/Lab work/Practical training):
  1. Visual Studio IDE and .NET Framework overview
  2. Code First approach to database design using Entity Framework
  3. Querying and storing the data using Entity Framework
  4. Advanced Entity Framework and LINQ topics (extension methods and expression trees)
  5. Restful Web API development using .NET Core
  6. Combining .NET class libraries and executable projects into a modular architecture
  7. CQRS examples using interfaces and generic data structures
  8. Working with JWT libraries to create common HTTP authorization and authentization layer
  9. Wrapping it all together in a single comprehensive project
Textbooks and References
  1. Price, M. J. (2019). C# 8.0 AND. NET CORE 3.0. Packt Publishing.
  2. Martin, R. C. (2018). Clean architecture: a craftsman's guide to software structure and design. Prentice Hall.
  3. Reynders, F. (2018). Modern API Design with ASP .NET Core 2. Building Cross.
  4. Schwichtenberg, H. (2018). Modern Data Access with Entity Framework Core. Apress, Essen, Germany.
Number of active classes (weekly)
Lectures: 4
Practical classes: 2
Other types of classes: 2
Grading (maximum number of points: 100)
Pre-exam obligations
Points
activities during lectures
0
activities on practial excersises
25
seminary work
0
colloquium
25
Final exam
Points
Written exam
50
Oral exam
0