Skip to content

Latest commit

 

History

History
151 lines (117 loc) · 5.81 KB

course-calendar.md

File metadata and controls

151 lines (117 loc) · 5.81 KB

Course

Curriculum (German)

Source

Semester 9

Bildungs- und Lehraufgabe

Die Schülerinnen und Schüler können...

  • verschiedene Softwarearchitekturen beschreiben und für konkrete, in der Praxis auftretende, Problemstellungen entsprechende Architekturen erstellen;
  • plattformübergreifende Softwaresysteme erstellen.

Lehrstoff

  • Softwarearchitekturen, Architekturmuster.
  • Einsatz aktueller Programmiertechniken, Kommunikation zwischen heterogenen Systemen,
  • Internationalisierung, Optimierung, Systemtests, Deployment.

Course Content

  • Recap from last year:
    • Web development (Single Page Apps) with Angular
    • Web API development with .NET
    • DB access in .NET
  • Designing and implementing cross-platform RESTful web APIs (in particular .NET 6), relevant communication protocols (in particular HTTP, OpenID Connect)
  • Reactive design patterns (ReactiveX, in particular RxJS in Angular)
  • Internationalization (in particular localize package for Angular)
  • Database access patterns, object-relational mapper (in particular Entity Framework)
  • Writing automated unit tests (in particular Jest and/or Jasmine for Angular, xUnit for .NET)
  • Cloud computing deployment (in particular GitHub Actions)

Semester 10

Bildungs- und Lehraufgabe

Die Schülerinnen und Schüler können...

  • komplexe Benutzerschnittstellen unter dem Aspekt der Usability entwerfen und implementieren;
  • komplexe, plattformübergreifende Softwaresysteme für den Produktivbetrieb erstellen.

Lehrstoff

  • Visuelle Gestaltung und Dialoggestaltung, Softwareergonomie.
  • Anwendung aktueller Softwaretechnologien, Erstellung von Frameworks, Softwarequalität, Performance-Tests.

Course Content

  • Response UI design in web development (in particular SCSS, Angular Material in more details)
  • Performance testing and benchmarking (in particular Visual Studio Profiler with .NET, Benchmark.net with .NET)

Course Calendar

Semester 1

Date Content
2021-09-16 Recap (Angular)
2021-09-23 Recap (.NET), news in .NET 6
2021-09-30 Recap (EFCore), news in .NET 6
2021-10-07 Angular RxJS
2021-10-14 Web APIs (.NET)
2021-10-21 Web APIs (Frontend + Backend)
2021-10-29 No School
2021-11-04 Exam preparation (exercise)
2021-11-11 Written Exam
2021-11-18 Testable code (Angular)
2021-11-25 Testable code (.NET)
2021-12-02 Unit testing (basics)
2021-12-09 Unit testing (mocking)
2021-12-16 Internationalization (Angular)
2021-12-23 Exam preparation (exercise)
2021-12-30 No School
2022-01-06 No School
2022-01-13 Exam preparation (exercise)
2022-01-20 Written Exam
2022-01-27 Deployment automation
2022-02-03 Exams
2022-02-10 TBD (buffer)
2022-02-17 TBD (buffer)
2022-02-24 No School

Semester 2

Date Content
2022-03-03 Recap CSS; SCSS
2022-03-10 Responsive design with Angular Material
2022-03-17 Responsive design with Angular Material
2022-03-24 Exam preparation (exercise)
2022-03-31 Written Exam
2022-04-07 Exams
2022-04-14 No School
2022-04-21 TBD (buffer)
2022-04-28 TBD (buffer)

Exams

  • Semester 1/Exam 1: Writing full-stack apps with .NET and Angular
  • Semester 1/Exam 2: Testing in frontend and backend
  • Semester 2/Exam 1: Designing and implementing UIs with Angular and web technologies

Presentations

Requirements

All in semester 1

  • In general: Teams of two (one single person)
  • Duration: 15 minutes presentation + 5 minutes Q&A
  • Must contain:
    • Theoretical introduction
    • Practical demo (can be live or pre-recorded)
    • Quick Kahoot! quiz with at least five questions at the end
  • Presentation material must be made available to entire class (e.g. via GitHub)

Topics

  1. Frontend
    • End-to-end testing with Cypress
    • Bootstrap CSS - what is it, how is it different from Angular Material, how can I use it in Angular
    • Introduction in Nx tools for Angular
    • CSS transitions and Angular animations
    • How ESLint can help to write better TypeScript and Angular code
    • Building reusable Angular components in libraries
    • Creating installable client apps with Angular and Electron
    • Responsive design with CSS media queries and/or CSS flexbox
    • Simpler CSS with Stylus
  2. Backend and protocols
    • In-memory provider in Entity Framework Core and it's relevance for automated testing
    • GraphQL services - what is it and how can you build one in .NET
    • Helm Charts - what is it and how can you use it for applications written in .NET and Angular
    • Diagnostic tools and tracing in .NET
    • Building and deploying .NET apps based on Docker containers

Grading

  • Max. 20 points per exam
  • Max. 10 points for presentation
  • Max. 10 points homeworks/participation
  • Optionally: Max. 10 points for oral exam
Grade Min. Percentage (incl.)
1 89
2 76
3 63
4 50
5 Less than 50 perc.