140 likes | 317 Views
Programmering av dynamiske websider i C# - hva er det, og hvordan undervise?. Tom Heine Nätt. Plan. Hva er C# og .NET? Hva er Visual Web Developer Express? Hvorfor dynamiske websider? Hvorfor C#/Visual Web Developer Express? Eksempler NB! Dere blir ikke eksperter fra dette…
E N D
Programmering av dynamiske websider i C#- hva er det, og hvordan undervise? Tom Heine Nätt
Plan • Hva er C# og .NET? • Hva er Visual Web Developer Express? • Hvorfor dynamiske websider? • Hvorfor C#/Visual Web Developer Express? • Eksempler • NB! Dere blir ikke eksperter fra dette… • Ressurser og hjelp • Om boka • Planlegging og dokumentasjon • Hvordan undervise dette? • Spørsmål og diskusjoner…
Hva er C#? • Programmeringsspråk • Utviklet av Microsoft • Bygger på C++ (og Java) • Også mange likheter med VB • Objektorientert
Hva er .NET? • Er et rammeverk (framework) • og ikke noe programmeringsspråk… • Et lag mellom applikasjonen og Operativsystemet • Utvider operativsystemets funksjonalitet • Forenkler utvikling • Finnes i flere versjoner (bl.a.): • 1.0 • 1.1 • 2.0 • 3.0 • 3.5 • Kjører C#, VB.NET, J# osv.
Hva er Visual Web Developer? • Verktøy for å lage dynamiske websider • Dvs. programmere dem • Et av flere Express-utskudd fra Visual Studio • Benytter .NET og C#/VB.NET • ASP.NET • Inneholder lite funksjonalitet for webdesign
Hvorfor dynamiske websider? • Videreføring av "tradisjonen" fra IT 1 • Motiverende å lage/vise frem • Ikke så vanskelig å lage noe stilig/nytt • Selvmotiverende ut fra webdesign i IT 1 • Motiverende for flere typer elever • Stadig flere "applikasjoner" legges på nett • OS=>Nettleser • Kunnskap som er etterspurt • Lag/foreninger • Småbedrifter • Personlige websider
Hvorfor C# og Visual Web Developer Express? • Visual Web Developer Express er: • et "passe stort" verktøy • fokusert på web-"applikasjoner" • gratis • C# er: • ledende i Microsoft-utvikling • mer oversiktlig enn VB.NET • lettere å lære enn VB.NET • mye likt andre populære programmeringsspråk (Java osv)
Eksempler • Intro • HelloWorld • Input/Output • Enkel valutakalkulator • Klasser • Yatzy* • CSS/Layout • FlyttBall* • .NET biblioteket • Ordteller* • Filbehandling • Resultatliste* • Databaser • Landsinformasjon • Ordtak* • Debugging • Større eksempel • Weblogg* * = Finnes i boka
Ressurser og hjelp • Innebygd • MSDN Library • Nettbasert • Google • Utallig websider med samlinger av eksempler osv. • Microsofts egne akademiske sider • Bøker
Om boka • ca 300 sider, farger • 3 deler • Grunnleggende programmering • Valgfrie temaer • Planlegging, dokumentasjon og testing • Tradisjonelt innhold • Utradisjonell layout
Planlegging og dokumentasjon V-Modellen Kravspesifikasjon Akseptansetesting Systemdesign Integrasjonstesting Programdesign Enhetstesting Implementasjon
Hvordan undervise dette? • Ikke vær redd for små "tullete" eksempler • Ikke bare hva og hvordan, men også hvorfor! • La temaene bli "etterspurt" • Motiver hvert tema med hva man da kan lage • Husk at målet ikke er å utdanne programmerere! • Ikke følge boka slavisk • Stopp opp ved temaer som elevene interesserer seg for • Velg ut interessante temaer • Videreutvikle eksempler • Legg planlegging og dokumentasjon til slutt • Ikke la dette bli "Systemering" • selv om denne delen er enklere å undervise…
Hvordan undervise dette? • Lag oppgaver og undervisning som er "open-ended" • i begge ender… • Ikke ha for styrte oppgaver • Utnytt det at noen elever tar dette fort • Understrek hvor lett det er å benytte dette videre • Sørg for å ha en offentlig webserver • Dagsaktuelle eksempler • skrape websider, mock-ups, koble til tjenester • Avveksling med andre VS-produkter?
Spørsmål og diskusjoner • Hvorfor velge C#/VWD? • Hvorfor dynamiske websider? • Hvordan dekker C# læreplanen? • Hvordan undervise? • Forklaringer • Motivasjon • Kompleksitet • Hvordan legge til rette for alle elever? • Hvordan oppdatere seg på dette? • Eksamen……………