Schuleigenes Curriculum Informatik 12
Grundlagen der Algorithmik
1. Programmiersprachen und Programmierung
2. Benutzung des Python-Editors Geany/PyCharm
3. Algorithmen
- Erstellung eines Algorithmus zu einem gegebenen Problem in schriftlich verbalisierter Form oder als Struktogramm
- Bearbeitung eines Algorithmus (gegeben durch Code oder ein Struktogramm)
- Implementierung eines Algorithmus in die Programmiersprache
4. Einfache und sequentielle Datentypen, Variablen und Konstanten, Wertzuweisungen und Rechenoperationen
- Input/Output, Tastatur/Bildschirm, Dateien
- Stringoperationen, Zeichenfilter, einfache Verschlüsselung
5. Strukturierte Anweisungen
- Wiederholungsanweisungen ( for- und while-Schleife )
- Auswahlanweisungen ( if-Statement )
6. Extented Bachhaus-Naur-Form
- Formulierung einfacher Regeln in der EBNF
- EBNF als Metasprache
7. UML
- Klassendiagramm
- Aktivitätsdiagramm
- Sequenzdiagramm
- Zustandsdiagramm
Klassen und Objekte
1. Dictionaries
2. Klassen/Objekte
- Eigenschaften/Methoden; Public/Private
- Assoziation, Multiplizität, Navigation, Generalisierung
statische und dynamische Datenstrukturen
1. Objektorientierte Modellierung am Beispiel einer Bank
- Analyse eines vorgegebenen Klassendiagramms
- Erweiterung eines vorgegebenen Klassendiagramms
- Erstellung eines Klassendiagramms für ein vorgegebenes System
- Implementierung eines Modells unter Berücksichtigung der Konzepte der Kapselung, der Vererbung in Python
Kryptologie
1. Programmierübungen
- String-Manipulationen
- Einfache Verschlüsselung(Caesar-Verfahren)
Datenschutz
1. Datenschutz
- rechtliche Rahmenbedingungen im Umgang mit persönlichen Daten
- Informationelle Selbstbestimmung
Codierung und Übertragung von Daten
1. Internet
- Dezentraler Aufbau
- Client, Server, Router, DNS
- Sicherheit der Kommunikation
2. Programmierübungen
- ASCII/UTF8 Kodierung
- Buchstabenfilter, Buchstabenfrequenz