Mittel
Typisierung & Übersetzung
Statisch/dynamisch, stark/schwach, Compiler vs. Interpreter.
Warum Priorität „Mittel"? Gelegentlich Teil der Prüfung (40–59%). Verstehen, aber nicht überinvestieren.
Lernziele
- Statisch / dynamisch und stark / schwach sicher auseinanderhalten
- Compiler, Interpreter und JIT unterscheiden
- Sprachen in die 4 Felder einordnen
Typisierung
- Statisch: Typ zur Compile-Zeit bekannt (Java, C, C#, Go).
- Dynamisch: Typ zur Laufzeit (Python, JavaScript, Ruby).
- Stark: keine impliziten Typumwandlungen (Python, Java).
- Schwach: implizite Casts (JavaScript, C).
Übersetzungsarten
- Compiler: übersetzt kompletten Quellcode vor Ausführung in Maschinen- oder Bytecode (C → .exe).
- Interpreter: führt Quellcode zeilenweise zur Laufzeit aus (Python).
- JIT (Just-in-Time): Mischform, zur Laufzeit kompiliert (Java JVM, .NET CLR, V8).
Sprachen im Überblick
| Sprache | Typisierung | Übersetzung |
|---|---|---|
| Java | statisch, stark | Compiler + JIT (JVM) |
| Python | dynamisch, stark | Interpreter |
| JavaScript | dynamisch, schwach | JIT (V8) |
| C | statisch, schwach | Compiler |
Übungen
Eine AntwortWelche Sprache ist dynamisch und stark typisiert?
Eine AntwortWas macht ein JIT-Compiler?