optional vorab: Vermittlung der Basistechniken einer modernen Webanwendung: HTML/HTML5, CSS, JavaScript, TypeScript, DHTML, DOM, AJAX, Webservices, REST, JSON
Konzepte moderner Web-, Mobil- und Cross-Platform-Anwendung
- AJAX statt "Round Trips"
- REST-Kommunikation mit HTTP-Diensten (XML, JSON)
- Usability ähnlich wie bei Desktop-Anwendungen
- Responsive Web Design (RWD)
- Pattern für die Benutzeroberfläche (MVVM, MVC, MVP)
- Single-Page-Web-Applications (SPAs)
- Offline-Fähigkeit
- Benachrichtigungen/Push ("Echtzeitfähigkeit") mit Websockets
- Progressive Enhancement
- Progressive Web Apps (PWA)
- Cross-Platform-Apps
Architektur einer modernen Web- und Mobilanwendung
- Aufbau des Servers
- Aufbau des Clients
- Kommunikationsarten
Werkzeuge
- Visual Studio
- HTTP-Debugger "Fiddler"
- Entwicklertools in den Browsern
- Weitere Werkzeuge wie ELMAH u.a.
ASP.NET MVC oder ASP.NET Core zur einfachen Erstellung von modernen Webanwendungen:
- Architektur von MVC-Anwendungen
- ASP.NET MVC im Vergleich zu ASP.NET Webforms
- ASP.NET Core MVC im Vergleich zu ASP.NET MVC
- Konzepte: Model, View, Controller, Routing, Areas, Filter
- Razor-Syntax
- HTML-Hilfsklassen für Grids, Grafiken, E-Mails, Diagramme
Modellgetriebene Entwicklung mit ASP.NET (Core) MVC
- Erstellen von Objektmodellen mit Metadaten
- Generieren von Benutzeroberflächen
- Validieren von Benutzereingaben
- Anpassen der Vorlagen
Aufbauwissen
- Caching
- Authentifizierung/Autorisierung
- Deployment
- Steuerelemente für ASP.NET (Core) MVC
- Zusatzbibliotheken für ASP.NET (Core) MVC: MVC Contrib, ASP.NET Web Optimization, T4MVC, u.a.
- Optional: Migration von ASP.NET Webforms zu ASP.NET (Core) MVC
- Optional: Mischung von ASP.NET (Core) MVC und ASP.NET Webforms in einer Webanwendung
REST-Dienste und AJAX
- Erstellung von REST-Services mit dem ASP.NET (Core) Web API
- Aufruf von der WebAPI-REST-Services in JavaScript mit jQuery und/oder AngularJS
Clientseitige Frameworks zur einfachen Erstellung von modernen Webanwendungen, z.B.:
- Einsatz von TypeScript als JavaScript-Abstraktion
- jQuery / jQueryUI
- Twitter Bootstrap
- AngularJS/Angular
- Aurelia
- ASP.NET (Core) SignalR
- Hilfsbibliotheken: z.B. Datumsverarbeitung mit moment.js, Filtern/Sortieren mit underscore.js, Promises mit Q, Reactive Extensions for JavaScript (RxJS)
Optional: weitere JavaScript-Frameworks wie knockout.js, Telerik KendoUI u.a. nach Ihrem Wunsch
Testen
- Unit Testing von ASP.NET MVC-Anwendungen
- Unit Testing von JavaScript-Code
- Dependency Injection
Sicherheit
- ASP.NET (Core) Identity-System
- Login mit eigenen Benutzernkonten sowie Facebook, Google, Twitter und Microsoft Account
- Single Sign on
- OAuth 2.0 und OpenID Connect
- Implementierungen für MVC, Web API und SignalR
Anwendungspraxis:
- Single-Page-Web-Application erstellen
- Mobile Webanwendungen erstellen
- Hybrid-Anwendungen mit Responsive Web Design erstellen
- Offlinefähige Webanwendungen erstellen
- Web-Anwendungen mit Rückkanal (Push-Nachrichten) erstellen
- Hintergrund-Aufgaben mit Webworkern erstellen
Änderungen in ASP.NET Core gegenüber ASP.NET MVC
- Geänderte Konzepte
- Entfallene Klassen und Funktionen
- Neue Klassen und Funktionen