Vi har et 10-ugers forløb som går over det pensum i skal lære på H1.
Projekt beskrivelse
I uge 3 starter vi officielt op på vores projekt. Projektet tager i alt 6 uger og er fordelt på følgende måde - Uge 1 OOP, Uge 2 Blazor, Uge 3 Databaseprogrammering, uge 4, 5 og 6 Projekt!
Så de første 3 uger styre vi med en jernhånd og de sidste 3 bliver mere løse og er hvor I skal binde jeres projekt rigtig sammen!
Vi skal designe en C2C webshop, altså en forbruger til forbruger webshop. Her skal man kunne lave annoncer som udgives på siden. Ofte ville man også kalde det en markedsplads!
Eksempler på C2C webshops
Bilbasen, DBA, Ebay, Trendsales, Orderly, Reshopper, Facebook marketplace, Gul og Gratis, Pensum!
Vi kan bruge siderne her som inspiration til hvad vores hjemmeside skal indeholde!
Det første trin er at vælge en niche! Det er altså ikke tilladt at bygge en all-purpose side som Ebay, Facebook marketplace eller DBA.
Eksempler kan være bilbasen, med biler.
Trendsales og Reshopper med brugt tøj.
Pensum med bøger.
Program
Programmet her er vejledende og det er ikke sikkert at tidsplanen holder - for en præcis tidsplan for jeres hold, skal i gå til Klasseoversigt
Ugetallene er vejledende her og bare for at give et udtryk for hvordan fordelingen er, den bliver altid drejet lidt pga. helligdage og andre planlægningskomplikationer!
Forudsætninger for H1 - Prerequisites
For at kunne starte på H1 er det selvfølgelig et krav at man har bestået GF2. Derfor forventer vi at I har den programmeringserfaring som en GF2 prøve kræver.
Fra “Stk. 3. Eleven skal have færdigheder i at anvende følgende grundlæggende metoder og redskaber til løsning af enkle opgaver under overholdelsen af relevante forskrifter:”
- Fremstilling af små programmer under anvendelse af et programmeringssoftware.
- Anvende variable til at gemme data i et program, herunder foretage valg af en passende datatype.
- Anvende kontrolstrukturer i et program til forgrening og løkker.
- Anvende et programmeringssoftwares indbyggede basale debugingsværktøjer til fejlsøgning i et program.
Fra “Stk. 4. Eleven skal have kompetence til på grundlæggende niveau at kunne:”
- Søge og anvende relevante informationer og procedurebeskrivelser.
- Tage initiativ til samarbejde med andre om løsning af opgaver.
Derfor forventer vi at I har en basis forståelse for følgende emner
Variabler, Funktioner/metoder, Loops (løkker), Conditionals såsom if, else og switch. Samt at I kan gøre brug af et debugingsværktøj, enten i jeres IDE eller fx en webbrowser.
Derudover forventer vi også at I kan arbejde seriøst med en opgave, selv finde information og kilder. Til sidst skal I også kunne arbejde i grupper omkring et programmeringsprojekt, det vil sige at I kan kommunikere og lave samt overholde aftaler med jeres klassekammerater!
Sproget som I har lært på jeres GF2 har ikke den store betydning, men vi skal kunne se at I forstår koncepterne!
Fag under H1 Projekt, LUP og målpinde
Her er en samling af LUP og målpinde for H1 forløbet.
LUP står for Lokale Uddannelses Plan og er en beskrivelse, vi har lavet af forløbet. Det giver et overblik, men der er langt mere information her på Notion omkring, hvad I faktisk skal lave!
I kan finde den for H1 her - Learnspace H1
Her er fagene, som I kommer igennem på projektet her - det er også (nogle) dem I for en karakter for!
-
Grundlæggende programmering - 16471-2 - Modul 1 + 2, med fokus på C#
- Eleven kan anvende et programmeringssprog til at udarbejde mindre
konsolprogrammer, herunder fejlfinde og teste dem.
- Eleven kan vælge en hensigtsmæssig datatype til en opgave.
- Eleven kan oprette og gøre brug af både enkelt- og multidimensionelle arrays.
- Eleven kan erklære og anvende simple metoder.
- Eleven kan diagrammere sit arbejde.
- Eleven kan benytte forskellige kontrolstrukturer.
- Eleven kan erklære og bruge variable samt konstanter.
- Eleven kan redegøre for brugen af kodekommentar.
- Eleven kan versionsstyre sit arbejde.
- Eleven kan benytte et debugging-værktøj.
- Eleven kan vælge hensigtsmæssige datatyper til variable og metoder.
- Eleven kan erklære og oprette metoder i et objekt med og uden returværdi og
parametre, samt gøre brug af disse.
-
Objektorienteret programmering - 16880-2 - Modul 3 - Objekt Orienteret Programmering
- Eleven kan anvende et objektorienteret programmeringssprog til at udarbejde
konsolprogrammer, der indeholder flere klasser og er i overensstemmelse med OOP
konceptet.
- Eleven har en grundlæggende viden om det valgte programmeringssprog/framework.
- Eleven kan definere og designe egne klasser.
- Eleven kan erklære og instantiere objekter.
- Eleven kan redegøre for typer af collections og kan udpege hensigtsmæssigt i forhold
til et behov.
- Eleven kan anvende en given kodestandard for det pågældende sprog.
- Eleven kan håndtere "exception handling".
- Eleven kan redegøre for OOP konceptet såsom indkapsling, polymorfi og arv.
- Eleven kan udarbejde en applikation som gør brug af OOP konceptet.
- Eleven kan implementere abstrakte klasser og metoder.
-
Clientsideprogrammering - 16476-2 - Modul 5 - Blazor web applikation
- Eleven kan forklare Client-Server modellen, herunder HTTP-protokollen.
- Eleven kan anvende grundlæggende HTML struktur og semantik.
- Eleven kan anvende lister, links, billeder samt tabeller.
- Eleven kan anvende HTML formularer.
- Eleven kan anvende CSS selectors.
- Eleven kan anvende CSS styling til tekst, links, list og tables m.m.
- Eleven kan anvende Box modellen.
- Eleven kan udvikle responsive websider, evt. ved hjælp af et CSS/JavaScript
framework.
<aside>
💡 Her bruger vi Blazor som alternativ til JavaScript Frameworks - Vi bruger også Bootstrap til vores CSS
</aside>
-
Databaseprogrammering - 16474-3 - Modul 6 - Database programmering og opsætning af DB
- Eleven kan anvende SELECT til at foretage forespørgsler op imod en tabel, herunder
sortering, gruppering, filtrering, aggregering, funktioner.
- Eleven kan anvende INSERT, UPDATE, DELETE til at foretage manipulationer af en
tabel.
- Eleven kan oprette, redigere og slette tabeller samt dokumentere vha. E/R-diagram.
- Eleven kan anvende relationstyperne 1:mange, mange:mange og 1:1 med tilhørende
nøgler.
- Eleven kan implementere konsistenskrav, referenceintegritet, relationer og forskellige
constraints.
- Eleven kan anvende JOIN og SUBQUERIES til at foretage forespørgsler fra flere
tabeller.
- Eleven kan oprette og slette en database.
- Eleven kan oprette Views og begrunde sikkerhedsaspektet.
-
Serverteknologi – Databaseserver - 16856-2 - Modul 6 - Database programmering og opsætning af DB
- Eleven kan, på et niveau svarende til MCP, "Administering a SQL Database
Infrastructure", redegøre for arkitekturen for en SQL-Server 2016 eller nyere og
herunder SQL-serverens egne datatabeller.
- Eleven kan planlægge installationen af en SQL server, samt foretage installationen.
- Eleven kan oprette en database, samt administrere segmenter og andre
databaseobjekter, tablespaces og datafiler.
- Eleven kan oprette brugere, administrere brugerkonti, -rettigheder og -ressourcer,
samt bruge SQL-serverens Authentication Modes.
- Eleven kan administrere tilladelser på kommandoer, Views, Stored Procedure og
Funktioner på SQL-serveren.
- Eleven kan konfigurere og benytte administrationsværktøjer til database-serveren,
herunder automatisere administrative jobs og administrere database-serveren både
med de grafiske administrationsværktøjer og med SQL-kommandoer.
- Eleven kan udføre database backup, samt implementere en backup strategi, herunder
udføre databaserestore og -recovery.
- Eleven kan foretage optimering af performance på SQL-serveren bl.a. ved brug af
forskellige former for indeksering, Stored Procedure og Statistics, samt brug af
Performance Monitoring.
- Eleven kan konfigurere en forbindelse mellem en client og en databaseserver.
- Eleven kan flytte data til og fra SQL-serveren ved brug af SQL Server Integration
Services (SSIS).
- Eleven kan redegøre for metoder til at genetablere ødelagte databaser, og kan
foretage fejlsøgning på problemer i database systemet, herunder fejlsøgning i SQLserveren ved hjælp af indbyggede Stored Procedures.
-
Computerteknologi - 16854-2 - Bliver spredt lidt ud over hele projektet
- Eleven kan ud fra en konkret kravsspecifikation dimensionere en arbejdsstation eller
server.
- Eleven kan installere og administrere en virtualiseringsplatform.
- Eleven kan tilgå og udføre konfigurationsændringer på virtualiseringsplatforme.
- Eleven kan konfigurere en arbejdsstation eller server med en hardware RAID
controller.
-
Netværk I - 16852-2 - Bliver taget på normal måde med Modul 7 - Netværk 1 - CCNA
- Eleven kan selvstændigt eller i samarbejde med andre elever løse en arbejdsopgave
omhandlende en routet netværksløsning.
- Eleven kan beregne hvilken vej trafikken vil tage igennem netværket, baseret på
output fra routertabeller i IPv4 og/eller IPv6.
- Eleven kan på baggrund af en subnet/wildcard maske beregne et IP-range.
- Eleven kan forklare hvordan en switch fungerer og anvendes i et firmanetværk.
- Eleven kan konfigurere basale sikkerhedsfunktioner på en router/switch f.eks. SSH og
passwords.
- Eleven kan konfigurere en switch med VLANs, port-security og trunking.
- Eleven kan implementere Inter-VLAN routing vha. en router eller en L3 Switch.
- Eleven kan implementere statisk routing mellem to routere på IPv4 og/eller IPv6.
- Eleven kan forklare funktionen af og konfigurere en default route.
- Eleven kan konfigurere og idriftsætte en dynamisk routerprotokol (f.eks. RIP).
- Eleven kan forklare forskellen på dynamiske routerprotokoller (IGP/EGP – Distance
Vector/Link State).
- Eleven kan konfigurere DHCP server på en router.
- Eleven kan konfigurere og anvende standard Access-lister (ACL) i forbindelse med
Network Address Translation (NAT) og simpel IP trafikregulering.
- Eleven kan implementere NAT på en router
Teknologier på H1 - C#, .NET og SQL
På H1, bestemmer jeres underviser teknologierne, her er det desværre ikke muligt at afvige fra de valg, selvom man bruger nogle andre på ens arbejdsplads. På de senere hovedforløb, vil vi rigtig gerne give jer lidt mere frihed, hvor I derimod selv står til ansvar for at jeres teknologi kan løse opgaven!
Dette er også beskrevet på [1.1 - Installation af Visual Studio, GitHub og jeres første C# program](https://mercantec.notion.site/1-1-Installation-af-og-jeres-f-rste-program-34d7052f80eb43cf85862ba4fef31912)
Vi bruger primært Visual Studio på vores hovedforløb og generelt, når vi har med C# og .NET at gøre! Udover det, bruger vi også Git fra dag 1, hvor vi har valgt GitHub som vores udbyder og versionsstyringsværktøj.
Vi installere Visual Studie Code som en backup, den fylder næsten ikke noget. Specielt jer med Mac kan opleve problemer med Visual Studio!
Video guide til opsætning af udvikler miljø - TBA
PowerPoint til H1
Her er en mappe med alle de PowerPoints som I bliver vist på jeres H1 forløb. De minder meget om det pensum, som I har her på Notion, bare i et fremlæggelses format. Derudover prøvet vi at inkludere så meget live-kodning som muligt i fremlæggelserne.
På førstedagen gennemgår vi følgende: https://edumercantec-my.sharepoint.com/:p:/g/personal/mags_edu_mercantec_dk/EYK8D-ACQaRCmJGO_V0R5ssBxeSdXSNclxFoMkx_Neq_8Q?e=KuMXjT
https://edumercantec-my.sharepoint.com/:f:/g/personal/mags_edu_mercantec_dk/EgXP_nhsZp9Cicbzx624l1sB0g5aiHd7gfBK3KBgKD00AA?e=Ltq90P
Modul 1 - Bliv tryg i C# og grundlæggende programmeringskoncepter
1.1 - Installation af Visual Studio, GitHub og jeres første C# program
1.2 - Datatyper, Conditionals og Loops
En del af jer kender nok koncepterne herunder, derfor fylder vi en smule mere på og tager et oplæg om grundlæggende Git og GitHub, med fokus på det GitHub repository som I allerede har!
1.3 - Conditionals og Loops fortsat
1.4 - Datatyper og Typecasting
1.5 - Metoder