Komponentdriven webbdesign
Välkommen till Pär Erikssons delar av kursen. Min enkla pedagogiska ide' och erfarenhet är att man lär sig mycket genom att lägga ner tid ca 2-4 timmar varje dag på att läsa i kursboken, titta på inspelningar samt skriva av befintlig kodexempel ur boken, inspelningar etc. Gör små förändringar i och av den för att sen testköra och se vad som händer. Ta paus varje timme. Ha en tänkt app för företag, klubb eller förening som du använder dina nya kunskaper på. Där du tänker, hur kan jag tillämpa det nya jag lärt mig på deras app? Jag kör ofta en tänkt liten bilfirma som jag applicerar nya koncept/kunskaper på och skriver koden för.
Veckoplanering - Vad titta på? Vad läsa? Vad göra?
Att läsa
- En webbkomponent är en samling tekniker som möjliggör för utvecklare att skapa återanvändbara och isolerade komponenter för webbapplikationer. Komponenten är en JS klass i vilken det används HTML, CSS och JavaScript för att skapa komponentens layout och funktionalitet. Den kan importeras och integreras i befintliga webbsidor. Vilket gör den återanvändbara, ökar modulariteten och underlättar underhåll och utveckling av webbapplikationer.
- Webbkomponenter
- Använda webbkomponenter
Att titta på
- Filezilla och Webbservern och VScode - Under kursen har du tillgång till en webbserver. Du kan ladda upp dina HTML-, JS- och eventuella PHP-filer till den med hjälp av Filezilla FTP-program. Sedan kan du besöka dem i webbläsaren för att se att de fungerar som de ska. Du har också tillgång till VSCode direkt i webbläsarfönstret, så du kan koda dina HTML-, JS- och PHP-filer direkt på webbservern. Du kan även koda lokalt på din dator och sedan ladda upp filerna hemifrån via FTP.
- Fö1 Intro Webbkomponenter - Genomgång vad är webbkomponenter? Varför använda dem? Fördelar med dem. Nyckelkoncept och begrepp. Kodexempel på hur du skapar och använder sin första webbkomponent. Callback metod för att fylla webbkomponent med data från Rest API
- Fö2 SumCalculator Webcomponent - Vi visar hur du skapar en enkel webbkomponent i JavaScript som summerar två tal. Denna komponent importeras och används som en tagg i en HTML-sida.
- Fö2_2 UserName webcomponent - Hur du sätter och hämtar attribut värde till egen gjorda webkomponent. Du använder set och get metoder för samt observedAttributes() i klassen. Visar också hur du med javascript dynamiskt skapar upp denna webbkomponent och sätter dess attribut värden.
- Fö3 Google books api webcomponent - Visar hur du skapar och använder en egengjord webbkomponent som gör ett http anrop mot googlebooks api:et med hjälp av fetch api:et. Funna böcker baserat på sökningen presenteras i som en ul lista
- Fö4 Weather webcomponent - Webbkomponent som hämtar och visar väder för viss stad. Den har attributet, city, som bestämmer vilken stad man hämtar väderdata för.
- Fö5 Customevents - Hur du i en sender webbkomponent skapar upp och dispatchar ett customevent med data i som en receiver webbkomponent ligger och lyssnar på för att hämta ut dess data.
- Fö6 Cars webcomponent - Sender - Visar hur två webbkomponenter samarbetar genom att sender komponenten skapar och dispatchar ett custom event med bil data som receivern komponenten lyssnar på för att hämta ut bil data och presentera det.
- Fö7 Cars webcomponent - Receiver - Receiver webbkomponenten ligger och lyssnar på ett customevent från sendern. När det sker så hämtar receivern ut det eventets bil data och presentera det.
- Fö8 Leaflet karta med jordbävningar - Hämta jordbävningsdata från API för att presentera det data på en karta med marker och popup med data för var jordbävningen skedd, dess magnitud samt länk till var du kan läsa mer om denna jordbävning.
- Fö10 Chart.js för att visa vin priser i ett diagram. - Lär dig använda Chart.js för att visa data i linjediagram. Ett EU API för vin priser används.
- Fö11 Chart.js Hur rendera linjediagram med vin priser för viss kategori - Försättning hur vi skapar upp själva linje diagrammet och fyller det med data så vi kan rita ut det. Visar även hur du söker efter högsta resp. lägsta priset för att presentera det.
- Fö Vue javascript ramverk - frivillig - Hur använda Vue javascript ramverk för att söka och presentera bok data från googlebooks api:et. Vi kommer att gå igenom Vue.js ramverket mer i en annan kurs men här får du en 'teaser' hur du kan använda det i en egengjord webbkomponent
- Youtube: Learn Web Components In 25 Minutes - Grunder i hur du gör webbkomponenter.
- Youtube: How to create a Web Component using Vanilla JS - Grunder i hur du gör webbkomponenter.
- Kort intro till projektarbetet - Metal for all - Kort beskrivning av Metal for all, som är ett, av de två projektarbeten du kan välja mellan.
- Kort intro till projektarbetet - Shop 'til u die - Kort beskrivning av Shop 'til u die, som är ett, av de två projektarbeten du kan välja mellan.
Övningar
- Finn en bra förklarande video på Youtube om hur man implementerar egen webbkomponent. Gör det exemplet/en som visa i videon och få den att funka.
- Skapa en enkel webbkomponent som visar ditt namn och epostadress.
- Gör om den tidigare webbkompentent så att den har två attribut namn och epost som läser dessa två attributvärden och visar namnet och eposten
- Skapa en webbkomponent med en knapp. När den klickas på visas ett slump tal mellan 1 och 100.
- Skapa en webbkomponent med en knapp. När den klickas på visas en slumpad bild.
- Gör om min sum-calculator från föreläsningsvideon så att den får med de övriga räknesätt som subtraktion, multiplikation och division.
- Gör en webkomponent för en lånekalkylator som beräknar månadskostnaden för ett lån. Använd formel för annuitetslån, där man betalar av med samma månadskostnad hela låneperioden.
- Gör två webkomponenter en sender som dispatchar ett customevent med data som den andra webkomponent en receiver lyssnar på för att plocka ut det data och presentera det.
- Gör en egen webbkomponent som hämtar data från ett API på nätet, tex Disney api, med hjälp av fetch, async och await för att presentera det på ett snyggt sätt med hjälp av Bootstrap 5.
- Gör en egen webkomponent som presenterar brott på en karta med marker och popup med hjälp av Leaflet.js ramverket. Använd polisens API om brott.
- Gör en egen webkomponent som använder Chart.js ramverk för att presentera data i valfritt diagram. Finn eget lämpligt API, eller Covid, på nätet för att hämta data som kan presenteras i ett diagram.
Inlämningar
- Görs som ett större projekt i grupp eller enskilt under vecka 43–44. Men du kan börja kolla redan nu. Se instruktioner i kursrummet under uppgifter.
Frågor och svar
Formulera ditt svar. Tryck sen på frågan för att se mitt svar. Jämför svaren. Vad för likheter och skillnander ser du? Vad saknas i mitt respektive ditt svar?
- What is the purpose of Web Components?
- Why is reusing custom markup structures traditionally difficult?
- What are the three main technologies that Web Components consist of?
- What do Custom Elements enable developers to do?
- What is the Shadow DOM used for in Web Components?
- What is the first step in creating a web component?
- How do you register a new custom element?
- What method is used to attach a shadow DOM to a custom element?
- How do you define a custom element named my-custom-element?
- Which lifecycle callback is called each time the custom element is added to the document?
Att läsa
- Jobba med projektet i grupp eller enskilt.
Att titta på
- Kort intro till projektarbetet - Metal for all - Kort beskrivning av Metal for all, som är ett, av de två projektarbeten du kan välja mellan.
- Kort intro till projektarbetet - Shop 'til u die - Kort beskrivning av Shop 'til u die, som är ett, av de två projektarbeten du kan välja mellan.
Övningar
Inlämningar
- Kom ihåg inlämning av projektet vecka 44 fredag 23:59. Online Redovisning sker vecka 45. Se instruktioner i kursrummet under uppgifter.
Frågor och svar
Formulera ditt svar. Tryck sen på frågan för att se mitt svar. Jämför svaren. Vad för likheter och skillnander ser du? Vad saknas i mitt respektive ditt svar?
Att läsa
- Online redovisning av projektuppgiften. Se schemat och projektuppgiften i kursrummet för när din/er grupp har er redovisning.
Att titta på
- Kort intro till projektarbetet - Metal for all - Kort beskrivning av Metal for all, som är ett, av de två projektarbeten du kan välja mellan.
- Kort intro till projektarbetet - Shop 'til u die - Kort beskrivning av Shop 'til u die, som är ett, av de två projektarbeten du kan välja mellan.
Övningar
Inlämningar
- Online redovisning av projektuppgiften. Se schemat och projektuppgiften i kursrummet för när din/er grupp har er redovisning.
Frågor och svar
Formulera ditt svar. Tryck sen på frågan för att se mitt svar. Jämför svaren. Vad för likheter och skillnander ser du? Vad saknas i mitt respektive ditt svar?
Webbkomponenter
Se spellistaKursnamn: Komponentdriven webbdesign
Program: Digitala tjänster – program för högskoleexamen
Beskrivning: Kursen behandlar tekniker inom DOM-manipulation av webbsidors struktur och funktionalitet. Du lär dig grunder i Javascript och Bootstrap. Komponentdriven webbdesign behandlas som helhet i ett projektarbete där du använder Bootstrap, Javascript och egengjorda webbkomponenter för att uppfylla designkrav.