25 KiB
Følg disse trin for at komme i gang med at bruge ressourcerne:
- Fork repositoryet: Klik
- Klon repositoryet:
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
- Deltag i Azure AI Foundry Discord og mød eksperter og andre udviklere
Webudvikling for begyndere - Et kursus
Lær grundlæggende webudvikling med vores 12-ugers omfattende kursus fra Microsoft Cloud Advocates. Hver af de 24 lektioner dykker ned i JavaScript, CSS og HTML gennem praktiske projekter som terrarier, browserudvidelser og rumspil. Engager dig med quizzer, diskussioner og praktiske opgaver. Forbedr dine færdigheder og optimer din viden med vores effektive projektbaserede undervisningsmetode. Start din koderejse i dag!
🧑🎓 Er du studerende?
Besøg Student Hub-siden, hvor du finder ressourcer for begyndere, studenterpakker og endda måder at få en gratis certifikatvoucher. Dette er siden, du vil bogmærke og tjekke fra tid til anden, da vi skifter indhold månedligt.
📣 Meddelelse - Nyt kursus om Generativ AI for JavaScript er netop udgivet
Gå ikke glip af vores nye Generativ AI-kursus!
Besøg https://aka.ms/genai-js-course for at komme i gang!
- Lektioner, der dækker alt fra grundlæggende til RAG.
- Interager med historiske figurer ved hjælp af GenAI og vores ledsager-app.
- Sjov og engagerende fortælling, du vil rejse i tiden!
Hver lektion inkluderer en opgave, en videnstest og en udfordring, der guider dig i at lære emner som:
- Prompting og prompt engineering
- Tekst- og billedapp-generering
- Søgeapps
Besøg https://aka.ms/genai-js-course for at komme i gang!
🌱 Kom godt i gang
Lærere, vi har inkluderet nogle forslag til, hvordan man bruger dette kursus. Vi vil meget gerne høre din feedback i vores diskussionsforum!
Studerende, for hver lektion, start med en quiz før lektionen og fortsæt med at læse materialet, fuldføre de forskellige aktiviteter og teste din forståelse med quizzen efter lektionen.
For at forbedre din læringsoplevelse, forbind med dine medstuderende for at arbejde på projekterne sammen! Diskussioner opfordres i vores diskussionsforum, hvor vores team af moderatorer vil være tilgængelige for at besvare dine spørgsmål.
For at udvide din uddannelse anbefaler vi stærkt at udforske Microsoft Learn for yderligere studiematerialer.
📋 Opsætning af dit miljø
Dette kursus har et udviklingsmiljø klar til brug! Når du starter, kan du vælge at køre kurset i en Codespace (et browserbaseret miljø uden behov for installationer), eller lokalt på din computer ved hjælp af en teksteditor som Visual Studio Code.
Opret dit repository
For nemt at gemme dit arbejde anbefales det, at du opretter din egen kopi af dette repository. Du kan gøre dette ved at klikke på knappen Use this template øverst på siden. Dette vil oprette et nyt repository i din GitHub-konto med en kopi af kurset.
Følg disse trin:
- Fork repositoryet: Klik på "Fork"-knappen øverst til højre på denne side.
- Klon repositoryet:
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
Kør kurset i en Codespace
I din kopi af dette repository, som du har oprettet, klik på Code-knappen og vælg Open with Codespaces. Dette vil oprette en ny Codespace, hvor du kan arbejde.
!Codespace./images/createcodespace.png)
Kør kurset lokalt på din computer
For at køre dette kursus lokalt på din computer skal du bruge en teksteditor, en browser og et kommandolinjeværktøj. Vores første lektion, Introduktion til programmeringssprog og værktøjer, vil guide dig gennem forskellige muligheder for hvert af disse værktøjer, så du kan vælge det, der passer bedst til dig.
Vi anbefaler at bruge Visual Studio Code som din editor, som også har en indbygget Terminal. Du kan downloade Visual Studio Code her.
-
Klon dit repository til din computer. Du kan gøre dette ved at klikke på Code-knappen og kopiere URL'en:
Åbn derefter Terminal i Visual Studio Code og kør følgende kommando, hvor
<your-repository-url>
erstattes med den URL, du lige har kopieret:git clone <your-repository-url>
-
Åbn mappen i Visual Studio Code. Du kan gøre dette ved at klikke på File > Open Folder og vælge den mappe, du lige har klonet.
Anbefalede Visual Studio Code-udvidelser:
- Live Server - for at forhåndsvise HTML-sider i Visual Studio Code
- Copilot - for at hjælpe dig med at skrive kode hurtigere
📂 Hver lektion inkluderer:
- valgfri sketchnote
- valgfri supplerende video
- opvarmningsquiz før lektionen
- skriftlig lektion
- for projektbaserede lektioner, trin-for-trin vejledninger til at bygge projektet
- videnstest
- en udfordring
- supplerende læsning
- opgave
- quiz efter lektionen
En note om quizzer: Alle quizzer findes i Quiz-app-mappen, 48 quizzer i alt med tre spørgsmål hver. De er tilgængelige her, og quiz-appen kan køres lokalt eller implementeres på Azure; følg instruktionerne i
quiz-app
-mappen.
🗃️ Lektioner
Projekt Navn | Koncepter Lært | Læringsmål | Linket Lektion | Forfatter | |
---|---|---|---|---|---|
01 | Kom godt i gang | Introduktion til programmering og værktøjer | Lær de grundlæggende principper bag de fleste programmeringssprog og om software, der hjælper professionelle udviklere i deres arbejde | Introduktion til programmeringssprog og værktøjer | Jasmine |
02 | Kom godt i gang | Grundlæggende om GitHub, inklusiv teamwork | Hvordan man bruger GitHub i dit projekt, og hvordan man samarbejder med andre om en kodebase | Introduktion til GitHub | Floor |
03 | Kom godt i gang | Tilgængelighed | Lær det grundlæggende om webtilgængelighed | Grundlæggende om tilgængelighed | Christopher |
04 | JS Grundlæggende | JavaScript Datatyper | Det grundlæggende om JavaScript-datatyper | Datatyper | Jasmine |
05 | JS Grundlæggende | Funktioner og Metoder | Lær om funktioner og metoder til at styre en applikations logikflow | Funktioner og Metoder | Jasmine og Christopher |
06 | JS Grundlæggende | Beslutningstagning med JS | Lær hvordan man skaber betingelser i din kode ved hjælp af beslutningstagning | Beslutningstagning | Jasmine |
07 | JS Grundlæggende | Arrays og Loops | Arbejd med data ved hjælp af arrays og loops i JavaScript | Arrays og Loops | Jasmine |
08 | Terrarium | HTML i praksis | Byg HTML for at skabe et online terrarium med fokus på at bygge et layout | Introduktion til HTML | Jen |
09 | Terrarium | CSS i praksis | Byg CSS for at style det online terrarium med fokus på det grundlæggende i CSS, inklusiv at gøre siden responsiv | Introduktion til CSS | Jen |
10 | Terrarium | JavaScript Closures, DOM-manipulation | Byg JavaScript-koden, der gør terrariet til en drag/drop-grænseflade, med fokus på closures og DOM-manipulation | JavaScript Closures, DOM-manipulation | Jen |
11 | Typing Game | Byg et Typingspil | Lær at bruge tastaturbegivenheder til at styre logikken i din JavaScript-app | Event-Driven Programming | Christopher |
12 | Green Browser Extension | Arbejde med Browsere | Lær hvordan browsere fungerer, deres historie, og hvordan man opbygger de første elementer af en browserudvidelse | About Browsers | Jen |
13 | Green Browser Extension | Bygning af en formular, kald til en API og lagring af variabler lokalt | Byg JavaScript-elementerne i din browserudvidelse til at kalde en API ved hjælp af variabler, der er gemt lokalt | APIs, Forms, and Local Storage | Jen |
14 | Green Browser Extension | Baggrundsprocesser i browseren, webperformance | Brug browserens baggrundsprocesser til at administrere udvidelsens ikon; lær om webperformance og optimeringer | Background Tasks and Performance | Jen |
15 | Space Game | Mere avanceret spiludvikling med JavaScript | Lær om arv ved hjælp af både klasser og komposition samt Pub/Sub-mønsteret som forberedelse til at bygge et spil | Introduction to Advanced Game Development | Chris |
16 | Space Game | Tegning på canvas | Lær om Canvas API, som bruges til at tegne elementer på en skærm | Drawing to Canvas | Chris |
17 | Space Game | Flytte elementer rundt på skærmen | Opdag hvordan elementer kan få bevægelse ved hjælp af kartesiske koordinater og Canvas API | Moving Elements Around | Chris |
18 | Space Game | Kollisionsdetektion | Få elementer til at kollidere og reagere på hinanden ved hjælp af tastetryk og tilføj en cooldown-funktion for at sikre performance | Collision Detection | Chris |
19 | Space Game | Holde styr på point | Udfør matematiske beregninger baseret på spillets status og performance | Keeping Score | Chris |
20 | Space Game | Afslutte og genstarte spillet | Lær om at afslutte og genstarte spillet, herunder oprydning af aktiver og nulstilling af variabelværdier | The Ending Condition | Chris |
21 | Banking App | HTML-skabeloner og ruter i en webapp | Lær hvordan man opbygger strukturen for en fler-sidet webapps arkitektur ved hjælp af routing og HTML-skabeloner | HTML Templates and Routes | Yohan |
22 | Banking App | Byg en login- og registreringsformular | Lær om at bygge formularer og håndtere valideringsrutiner | Forms | Yohan |
23 | Banking App | Metoder til at hente og bruge data | Hvordan data flyder ind og ud af din app, hvordan man henter det, gemmer det og sletter det | Data | Yohan |
24 | Banking App | Koncepter for tilstandsadministration | Lær hvordan din app bevarer tilstand og hvordan man administrerer den programmatisk | State Management | Yohan |
🏫 Pædagogik
Vores pensum er designet med to centrale pædagogiske principper:
- projektbaseret læring
- hyppige quizzer
Programmet underviser i grundlæggende JavaScript, HTML og CSS samt de nyeste værktøjer og teknikker, som moderne webudviklere bruger. Studerende får mulighed for at opbygge praktisk erfaring ved at udvikle et typingspil, et virtuelt terrarium, en miljøvenlig browserudvidelse, et space-invader-lignende spil og en bankapp til virksomheder. Ved afslutningen af serien vil de studerende have opnået en solid forståelse af webudvikling.
🎓 Du kan tage de første par lektioner i dette pensum som en Learn Path på Microsoft Learn!
Ved at sikre, at indholdet er projektorienteret, bliver processen mere engagerende for de studerende, og konceptforståelsen vil blive styrket. Vi har også skrevet flere introduktionslektioner i JavaScript-grundlæggende for at introducere begreber, ledsaget af en video fra "Beginners Series to: JavaScript"-samlingen af videotutorials, hvor nogle af forfatterne har bidraget til dette pensum.
Derudover sætter en lav-stress quiz før en klasse fokus på emnet for de studerende, mens en anden quiz efter klassen sikrer yderligere fastholdelse. Dette pensum er designet til at være fleksibelt og sjovt og kan tages helt eller delvist. Projekterne starter små og bliver gradvist mere komplekse i løbet af den 12-ugers cyklus.
Selvom vi bevidst har undgået at introducere JavaScript-frameworks for at koncentrere os om de grundlæggende færdigheder, der er nødvendige som webudvikler, før man adopterer et framework, ville et godt næste skridt efter at have gennemført dette pensum være at lære om Node.js via en anden samling af videoer: "Beginner Series to: Node.js".
Besøg vores Code of Conduct og Contributing-retningslinjer. Vi modtager gerne din konstruktive feedback!
🧭 Offline adgang
Du kan køre denne dokumentation offline ved at bruge Docsify. Fork denne repo, installer Docsify på din lokale maskine, og skriv derefter docsify serve
i rodmappen af denne repo. Websitet vil blive serveret på port 3000 på din localhost: localhost:3000
.
En PDF af alle lektionerne kan findes her.
🎒 Andre kurser
Vores team producerer andre kurser! Tjek:
- Generative AI for Beginners
- Generative AI for Beginners .NET
- Generative AI with JavaScript
- Generative AI with Java
- AI for Beginners
- Data Science for Beginners
- ML for Beginners
- Cybersecurity for Beginners
- Web Dev for Beginners
- IoT for Beginners
- XR Development for Beginners
- Mastering GitHub Copilot for Agentic use
- Mastering GitHub Copilot for C#/.NET Developers
- Choose Your Own Copilot Adventure
Licens
Dette repository er licenseret under MIT-licensen. Se LICENSE-filen for mere information.
Ansvarsfraskrivelse:
Dette dokument er blevet oversat ved hjælp af AI-oversættelsestjenesten Co-op Translator. Selvom vi bestræber os på nøjagtighed, skal du være opmærksom på, at automatiserede oversættelser kan indeholde fejl eller unøjagtigheder. Det originale dokument på dets oprindelige sprog bør betragtes som den autoritative kilde. For kritisk information anbefales professionel menneskelig oversættelse. Vi er ikke ansvarlige for eventuelle misforståelser eller fejltolkninger, der måtte opstå som følge af brugen af denne oversættelse.