1. Algorithmen und Programmieren |
Die Schülerinnen und Schüler |
Implementierung |
Lösungsverfahren |
- können zur Lösung stufengerechter Aufgaben Algorithmen entwerfen, implementieren und beurteilen
- kennen grundlegende Lösungskonzepte (Modularisierung, Abstraktion)
- können Algorithmenentwurfstechniken anwenden (Teile und Herrsche, Rekursion, Backtracking, schrittweises Verfeinern, etc.)
- kennen wichtige Algorithmen (Durchsuchen von Listen, Bäumen und Graphen, Sortieren)
- können Lösungswege und Algorithmen geeignet beschreiben und visualisieren
- wissen, dass es sequentielle und parallele Rechenprozesse gibt.
|
- durchgehend, durch Aufgaben. Implementierung in Python
- Funktionen (2.4)
- Teile und Herrsche (durchgehend)
Rekursionen (2.9),
Backtracking (10.3)
-
Listen (3.9), Bäume (10.3),
Graph (10.4), Sortieren (10.1)
- Computerexperimente (8), Simulationen (8.1), Populationen (8.2), usw....
-
Parallelverarbeitung (11.4)
|
Theoretische Grundlagen |
- kennen theoretische Grenzen der Berechenbarkeit
-
können die praktische Umsetzbarkeit von Algorithmen einschätzen (Berechnungskomplexität, Computer Ressourcen)
- wissen, dass Probleme exakt oder approximativ gelöst werden können
- kennen Unterschiede zwischen natürlicher und Programmiersprachen (Eindeutigkeit, Kontextunabhängigkeit)
- kennen Grundlagen der Aussagenlogik und ihre Anwendung (Schleifenbedingung etc.)
|
- Effizienz und Grenzen (10.1, usw)
- Kombinatorische Explosion (10.2)
- Unlösbare Probleme (10.2)
- Akzeptor für reguläre Sprachen (10.6)
- Schleifenbedingungen (2.8)
Boolesche Variable (2.7)
|
Programmieren |
- können Algorithmen in Programme umsetzen
- können bestehenden Programmcode lesen und interpretieren
- können zielgerichtet syntaktische wie auch semantische Fehler erkennen und beheben (Debugging)
- können die Programmstrukturen Sequenz, Iteration, Selektion und die Rekursion einsetzen
- können Unterprogramme (Prozeduren/Funktionen) zur Strukturierung von Programmen nutzen (Wiederverwendbarkeit von Code).
- können Variablen zur Speicherung von Daten zur weiteren Verarbeitung einsetzen (Sichtbarkeit, Lebensdauer)
- kennen Programmierparadigmen (prozedural / imperativ, objektorientiert, funktional)
|
- Editieren/Ausführen von Python unter TigerJython
- durchgehend lauffähige Programme
- in TigerJython eingebauter didaktisch konzipierter Debugger (Sichtbarkeit von Funktionen, Variablen/ Einzelschritt)(11.3)
- Wiederholung: repeat (2.3), while (2.8), for (3.2)
Selektion (2.7), Rekursion (2.9)
- Funktionen (2.4), Strukturiertes Programmieren (3.3), Methoden Vererbung (7.2)
- Variablen (2.6), globale Variablen (3.5), Variablen als Zustandsbezeichner (10.6), Seiteneffekte (11.2)
- Python-Funktionen als Erstklass-Objekte, OOP (7.1. usw), Funktionales und Modulares Programmieren (11.2)
|
2. Information und Daten |
Die Schülerinnen und Schüler |
Implementierung |
Repräsentation und Codierung von Daten |
- kennen Bits und Bytes als Mass für die Datenmenge
- kennen Zusammenhänge zwischen Daten, Information und Wissen
- kennen verschiedene Repäsentationsformen von Daten (Text, Zahlen, Ton, Bild etc.)
- kennen Mechanismen der Kompression und Fehlerkorrektur
|
- explizite Definition fehlt
- Information und Ordnung (10.7)
- String, Dictionary, Bildbearbeitung (3.11), Sound (4.1. usw)
- fehlt
|
Datentypen und Datenstrukturen |
- kennen elementare Datentypen
- sind sich der begrenzten Genauigkeit von Rechenoperationen bewusst
- kennen wichtige Datenstrukturen (Felder, Listen, Bäume, Graphen)
- können mit Wert- und Referenztypen umgehen
|
- Integer, Long, Float durchgehend
- Rundungsfehler (11.3, nicht ausgebaut)
- Listen (3.9), ), Bäume (10.3), Graphen (10.4)
- einfacher Datentypen und Referenztypen ( 11.2)
|
Informationssysteme / Datenbanken |
- kennen Grundlagen relationaler Datenbanksysteme
- können einfache Datenbanken modellieren und anwenden
- kennen Probleme und Möglichkeiten von grossen Datenmengen (Suche, Recommender Systems, Data Mining)
|
- Datenbanken und SQL (gut ausgebaut) (9)
- Online-Datenbanken (9.2). Reservationssystem selbst erstellen (9,2)
- Goolesearch (6.3),
Recommender Systems und Data Mining fehlen
|
3. Systeme, Vernetzung und Sicherheit |
Die Schülerinnen und Schüler |
Implementierung |
Computersystem |
- können die wesentlichen Komponenten eines Computers benennen und deren Aufgaben erklären
- kennen die Bedeutung wichtiger Kenngrössen (Speicherplatz, Übertragungsgeschwindigkeit etc.)
- kennen die Grundfunktionsweise eines Rechners (Architektur, Betriebssystem)
- kennen die Prinzipien der Compilation und Interpretation.
|
- Aufbau und Funktion eines Computes (12.6)
- fehlt
- Aufbau und Funktion eines Computes (12.6)
- Python als Interpretersprache, grundsätzliche Abhandlung fehlt
|
Computernetzwerke / Internet |
- kennen typische Netzwerkkomponenten und Netzwerkdienste
- können in Grundzügen beschreiben, wie die Datenübertragung über ein Netzwerk funktioniert (Webseitenaufruf im Internet)
- kennen Grundlagen von Dokumentenbeschreibungssprachen im Web (Inhalt, Layout, Interaktivität)
|
- Grundwissen Internet (12.7). HTTP (6.2)
- Client-Server-Modell (6.2, gut ausgebaut)
- HTML Grundlagen (6.1), Hyperlinks
|
Sicherheit |
- sind sich der Gefahren des Internets (Malware, Phishing) bewusst und wissen, wie man sich vor ihnen schützen kann
- kennen grundlegende Prinzipien von kryptographischen Verfahren (Symmetrische, asymmetrische Verschlüsselung)
|
- Grundwissen Internet (12.7)
- Kryptosysteme (10.5, gut ausgebaut)
RSA
|
4. Modellierung, Simulation und Robotik |
Die Schülerinnen und Schüler |
Implementierung |
Modellierung und Computersimulation |
- können einfache Systeme modellieren und implementieren (Spiele, Automaten, Populationen)
- können einfache Zufallsexperimente simulieren
- können Ergebnisdaten aus Simulationen und Modellen auswerten, interpretieren und visualisieren
|
- Computeranwendungen in Math./Physik/Statistik umfangreich (8.1, usw.) Automaten (10.6)
- Umfangreich, z.B. (8.1), Wartezeiten (8.4) usw
.
- Umfangreich, z.B. Korrelation, Regression (8.6)
|
Robotik |
- sind fähig, einen realen oder simulierten Roboter zu programmieren
- können Sensoren und Aktoren einsetzen
|
- Umfangreich, basierend auf Lego Robotik und Python-Simulation (5.1, usw)
- Sensorik (5.4)
|
5. Informatik, Mensch und Gesellschaft |
Die Schülerinnen und Schüler |
Implementierung |
Historische Aspekte |
- kennen Grundzüge der historischen Entwicklung der Informatik
- kennen historisch wichtige Persönlichkeiten der Informatik und deren Entdeckungen
|
- Geschichte der Informatik (12.5)
- Geschichte der Informatik (12.5)
|
Benutzerschnittstellen |
- können Mensch-Maschine Schnittstellen gemäss logischen und ergonomischen Prinzipien entwerfen und beurteilen
|
- Programme mit Widgets (3.13)
|
Aspekte der Informationsgesellschaft |
- sind sich der Wechselbeziehung zwischen Informationstechnologien und Gesellschaft bewusst
- kennen Beispiele von Chancen- und Risiken beim Einsatz von Informationstechonogien (e-Health, digitale Assistenzsysteme etc.)
- kennen rechtliche Aspekte der Informatik (Urheberrecht Software)
|
|