Python eller JavaScript (struktureret)
Programmering B · HTX · B-niveau · Sprog og syntaks
💻 Struktureret programmering på B-niveau
B-niveau bygger ovenpå C-niveau med dyb beherskelse af ét sprog (typisk Python eller JavaScript) og indførelse af objektorienterede principper.
Python på B-niveau
```python
class Bil:
def __init__(self, mærke, model, år):
self.mærke = mærke
self.model = model
self.år = år
self.brændstof = 0
def tank_op(self, liter):
self.brændstof += liter
return f"{self.mærke} har nu {self.brændstof}L"
def kør(self, km):
forbrug = km * 0.08
if forbrug > self.brændstof:
return "Ikke nok brændstof!"
self.brændstof -= forbrug
return f"Kørte {km}km. Tilbage: {self.brændstof:.1f}L"
Brug
min_bil = Bil("Tesla", "Model 3", 2024)
print(min_bil.tank_op(50))
print(min_bil.kør(300))
```
JavaScript på B-niveau
```javascript
class Bil {
constructor(mærke, model, år) {
this.mærke = mærke;
this.model = model;
this.år = år;
this.brændstof = 0;
}
tankOp(liter) {
this.brændstof += liter;
return ${this.mærke} har nu ${this.brændstof}L;
}
}
```
Kerneprincipper (OOP)
- Klasse: skabelon for objekter
- Objekt: instans af klassen
- Indkapsling: data + funktioner sammen
- Arv: en klasse arver fra en anden (
class Elbil(Bil)) - Polymorfi: samme metode-navn, forskellig adfærd
Funktionelle koncepter
- Higher-order functions: map, filter, reduce
- Lambda-funktioner: korte anonyme funktioner
- Closures: funktioner der husker scope
Asynkron programmering
- Promises (JS) eller async/await (begge)
- Vigtigt for web (API-kald) og I/O
Pakker og biblioteker
- Python: pip install requests, pandas, flask
- JavaScript: npm install express, axios, react
Læringsmål
- Skrive en klasse med konstruktor og metoder
- Anvende arv og polymorfi
- Bruge higher-order functions
- Håndtere asynkrone operationer
Sådan kan du arbejde med emnet
- Skriv et program, der beregner og udskriver gennemsnittet af tre tal indtastet af brugeren
- Forklar hvad det betyder, at et sprog er "struktureret", og hvilke fordele det giver
- Refaktorér et lille program, så det opdeles i mindre, navngivne dele med klar opgave hver
Træningsforslag
- Lav et lille spil med Pygame (Python) eller Phaser (JS)
- Byg en RESTful API med Flask eller Express
- Bidrag til et open source-projekt på GitHub
Øv dette emne med AI — quizzer, forklaringer og feedback tilpasset dit niveau.
Prøv Fagportalen gratis