C# webdeveloper


Programmeer device en browser onafhankelijke applicaties in C#!
Opleiding ICT en informatiemanagement 150207

Introductie

Op efficiënte wijze Responsive (Mobile) Web Applications bouwen en deze browser onafhankelijk ter beschikking stellen, is de hedendaagse standaard voor de veeleisende webbezoeker. De webbezoeker wenst daarenboven dezelfde User eXperience (UX) te ervaren op al zijn verschillende type devices (lees: form factors gaande van PC-scherm over tablet naar een smartphone). De oplossing voor deze uitdaging is het ontwikkelen van een "Responsive (mobile) Web Application" die browser, operating system en device onafhankelijk dezelfde User eXperience (UX) oplevert! In deze hands-on opleiding leren C# Developers Responsive mobile Web Applications ontwikkelen om deze vervolgens "On of Off premise" te hosten!

Omschrijving

Tijdens deze opleiding leert u een efficiënte programmeer-methodiek met als doel Responsive (Mobile) Web Applications te ontwikkelen. Met intensieve hands-on oefensessies op basis van de vereiste programmeerstandaarden bouwt u deze kennis op. De opleiding is uit de volgende modules opgebouwd: Client Side technologie, Server-Side technologie, Creating Web Applications en het hosten van de applicatie op zich. Zowel Microsoft technologieën als tal van andere (niet Microsoft) technologieën komen aan bod die samen een best practice ontwikkelmethode vormen. Daarmee gaat u als ervaren C# developer concreet aan de slag!

Voor wie is deze opleiding bestemd?

C# developers met minstens 1 jaar programmeerervaring in Microsoft Visual Studio

Voorkennis

U hebt de opleiding "Leren programmeren in C# - introductie ADO.NET" gevolgd, of u hebt een gelijkwaardig kennisniveau.

Methodologie

De opleiding wordt afgewisseld met theorie (concepten), hands-on oefeningen en praktische leidraad betreffende het Webprogrammeren.

Deelnemers ontvangen een volledig uitgewerkte cursustekst waarin zowel conceptuele voorbeelden als praktijk oefeningen worden uiteengezet.

Belangrijk om weten:

  • Om de opleiding te volgen is het noodzakelijk dat deelnemers een laptop met een Windows OS meebrengen.
  • Visual Studio 2017 - met zowel .NET CORE als .NET Framework - dient vóór de start van de opleiding door de deelnemer geïnstalleerd te zijn op de laptop. Hiervoor kan u eventueel de gratis Community Edition downloaden.

Programma

Module 1: Client-side technologie - Programming in HTML5 with JavaScript en CSS3

In deze module wordt de developer wegwijs gemaakt in de HTML5 en CSS3 technologie. Er wordt ook gebruik gemaakt van sommige nieuwe API's zoals het aanspreken van de camera of het ingebouwde GPS-toestel.  

Vandaag is JavaScript onontbeerlijk voor het bouwen van complexe web-applicaties: hier zal dan ook diep op ingegaan worden. Om de ontwikkelaar hiermee te helpen wordt duiding gegeven over een aantal veelgebruikte bibliotheken met name jQuery, Bootstrap, Knockout.

Om de webapplicatie bruikbaar te maken op allerlei toestellen waaronder tablets en smartphones, wordt gebruik gemaakt van responsive design.

  • Overview of HTML and CSS
  • Creating and Styling HTML5 Pages
  • Introduction to JavaScript
  • Creating Forms to Collect Data and Validate User Input
  • Communicating with a Remote Data Source
  • Styling HTML5 by Using CSS3
  • Creating Objects and Methods by Using JavaScript
  • Creating Interactive Pages using HTML5 APIs
  • Adding Offline Support to Web Applications
  • Implementing an Adaptive User Interface
  • Animating the User Interface

Module 2: Server-side technologie - Developing ASP.NET MVC Web Applications

ASP.NET MVC is de meest geschikte manier om webapplicaties te bouwen in C# die een relatief eenvoudige data-ingave vereisen. Tijdens deze opleiding zal gebruik gemaakt worden van de nieuwste editie, namelijk .NET Core

Voor complexere scenario's zijn JSON-only webapplicaties geschikter: deze laten toe om zeer uitgebreide beheerschermen te bouwen die de gebruiksvriendelijkheid van gewone Windowstoepassingen benaderen. Dit wordt mogelijk gemaakt door een doorgedreven gebruik van JavaScript en het MVVM pattern.

Om rechtstreeks te kunnen communiceren tussen de client en de server zijn (web)services vereist. Tijdens de opleiding zullen verscheidene manieren om services te bouwen besproken worden: WCF webservices, ASP.NET WebAPI, HttpHandlers en Websockets.

Tijdens de opleiding leert de cursist ASP.NET MVC controllers en views bouwen en te werken met datamodellen. Daarnaast wordt ook aangeleerd hoe webapplicaties gebouwd worden die volledig steunen op JSON.

Concreet wordt dezelfde applicatie eerst gebouwd in MVC en dan Json-only zodat de cursist kan oordelen welke methode in welke situatie het meest geschikt is.

  • Exploring ASP.NET MVC
  • Designing ASP.NET MVC Web Applications
  • Developing ASP.NET MVC Models
  • Developing ASP.NET MVC Controllers
  • Developing ASP.NET MVC Views
  • Testing and Debugging ASP.NET MVC Web Applications
  • Structuring ASP.NET MVC Web Applications
  • Applying Styles to ASP.NET MVC Web Applications
  • Building Responsive Pages in ASP.NET MVC Web Applications
  • Using JavaScript and jQuery for Responsive MVC Web Applications
  • Controlling Access to ASP.NET MVC Web Applications
  • Building a Resilient ASP.NET MVC Web Application
  • Implementing Web APIs in ASP.NET MVC Web Applications
  • Handling Requests in ASP.NET MVC Web Applications
  • Deploying ASP.NET MVC Web Applications

Module 3: Creating web applications using Blazor

Blazor is een nieuwe ontwikkelingstool voor webapplicaties van Microsoft. Deze technologie laat toe om .NET code rechtstreeks in de browser uit te voeren via Webassembly, of om de code op de server uit te voeren en de UI met SignalR bij te werken. Beide mogelijkheden laten toe om op veel plaatsen waar JavaScript vereist is, dit te vervangen door .NET code. Op deze manier kan dezelfde code gedeeld worden op server- en clientside. Bijvoorbeeld: validatie-routines hoeven dan niet in .NET én JavaScript voorzien te worden.

Blazor Server is beschikbaar in .NET Core 3, Blazor WebAssembly is in preview in .NET Core 3.1

  • What is blazor ?
  • Creating a web application using Blazor (server)
  • Creating a web application using Blazor (client)

Module 4: Hosting en Security

Uiteindelijk moet de toepassing ook beschikbaar gemaakt worden voor de eindgebruiker. Tijdens de opleiding zal de gebouwde toepassing gedeployed worden op een on-premise IIS server en op een Azure website. Aansluitend zullen ook Azure SQLServer en Azure Storage besproken worden.

Tegenwoordig is de beveiliging van uw webapplicatie van zeer groot belang: een aantal aanval-vectoren worden tijdens deze module besproken alsook wat u eraan kan doen. Vulnerabilities die besproken worden (onder andere):

  • SQL injection
  • Cross-site Request Forgery (CSRF)
  • Cross-site Scripting (XSS)
  • HTTPS cacheable response
  • SSL certificate vulnerabilities

Escala helpt u graag in uw continu streven naar verbetering en professionalisering.
Via in-house opleidingen, advies en begeleiding biedt Escala de nodige ondersteuning.