Kapitel 13
Programmering, användare och framtid
Språk och teknik förändras – problemlösningen består.
Mål
Efter kapitlet ska du kunna...
- koppla programspråk till användningsområden
- beskriva olika sätt att bygga program
- resonera om användarvänlighet och tillgänglighet
- förklara simuleringar och programmerade system
- diskutera vad som förändras och består
13.1
Programspråk är olika verktyg
Inget språk är bäst till allt.
Valet beror på vad som ska byggas, var det ska köras och vilka krav som finns.
Syntaxen skiljer sig, men många grundidéer återkommer.
Språk och områden
Vanliga användningsområden
| Språk | Exempel |
|---|---|
| Python | undervisning, automation, data, AI |
| JavaScript | interaktiv webb |
| C# | Unity, appar, större system |
| Java | företagssystem och appar |
| C/C++ | operativsystem, motorer, inbyggda system |
Varför Python?
Tydlig väg till grundidéerna
- Lättläst syntax.
- Snabbt att skriva mindre program.
- Används i verkliga projekt.
- Tränar variabler, villkor, loopar, funktioner och felhantering som finns i många språk.
Interaktiv kontroll
Vilket verktyg passar?
Välj ett projekt.
Detta är vanliga val, inte absoluta regler.
13.2
Program kan struktureras på olika sätt
Ett programmeringsparadigm är ett sätt att tänka och organisera kod.
Samma problem kan lösas med olika strukturer.
Storlek, uppgift och underhåll påverkar valet.
Procedurellt
Instruktioner steg för steg
Många av kursens terminalprogram följer denna tydliga ordning.
Funktioner
Dela upp ansvar
- En funktion läser in data.
- En funktion beräknar.
- En funktion visar resultat.
Programmet är fortfarande procedurellt men bättre organiserat.
Objektorienterat
Data och beteende hör ihop
Ett filmobjekt kan ha namn och längd.
Objektet kan också ha funktioner som hör till filmen.
Detta används ofta i större program och språk som C# och Java.
Händelsestyrt
Programmet reagerar på händelser
Tkinter och webbgränssnitt är vanliga exempel.
13.3
Tekniskt korrekt räcker inte
Användaren måste förstå vad som ska göras.
Input ska vara tydligt märkt.
Resultat och fel ska gå att tolka.
Arbetsordningen ska kännas logisk.
Tydliga instruktioner
Beskriv värde och format
Otydligt
Mata in värde:Tydligt
Skriv filmens längd i minuter:Felmeddelanden
Hjälp användaren vidare
Fel!Skriv ett heltal större än 0 för längden.Ett bra meddelande beskriver både problemet och nästa steg.
Tillgänglighet
Fler ska kunna använda programmet
- Tydlig text och enkla instruktioner.
- God kontrast och läsbar storlek.
- Logisk ordning mellan kontroller.
- Information ska inte bara förmedlas med färg.
- Onödiga steg ska undvikas.
13.4
Simuleringar efterliknar verkliga system
En modell beskriver vissa delar av verkligheten.
Programmet låter modellen förändras över tid eller med olika indata.
Resultatet kan användas för träning, analys eller beslut.
Exempel på simuleringar
Testa utan verklig risk
- Trafikflöden.
- Väder och klimat.
- Flyg- och körsimulatorer.
- Ekonomi och lager.
- Spelvärldar och fysik.
Begränsning
Modellen är inte verkligheten
En simulering bygger på antaganden och förenklingar.
Felaktiga data eller modeller ger missvisande resultat.
Resultatet måste därför tolkas kritiskt.
13.5
Tekniken förändras
| Förändras | Består |
|---|---|
| språk, verktyg, plattformar | problemlösning och logik |
| bibliotek och AI-stöd | testning och felsökning |
| hur kod produceras | ansvar för resultatet |
AI och programmering
Förståelse blir fortfarande nödvändig
- AI kan föreslå och förklara kod.
- Förslaget kan vara fel eller olämpligt.
- Programmeraren måste kunna testa, bedöma och anpassa.
- Säkerhet, etik och användarbehov blir viktigare.
Sammanfattning
Kom ihåg
- Välj språk efter uppgift och krav.
- Program kan byggas procedurellt, funktionellt uppdelat, objektorienterat eller händelsestyrt.
- Användarvänlighet kräver tydlighet, validering och tillgänglighet.
- Simuleringar är förenklade modeller.
- Verktyg förändras, men logik, testning och ansvar består.