Informatik (Wahlfach)
Leitgedanken zum Kompetenzerwerb
Prozessbezogene Kompetenzen zurücksetzen
  • 2.1 Strukturieren und Vernetzen
    • 2.1 Strukturieren und Vernetzen
    • mit dem Schulnetz (zum Beispiel Homeverzeichnis, Tauschverzeichnis, mobile Datenträger, Netzwerkdrucker) zielorientiert arbeiten
    • Dateien und Bezeichner (zum Beispiel für Variablen, Unterprogramme) aussagekräftig benennen
    • Beziehungen zwischen Daten/Objekten (zum Beispiel Hierarchien in Verzeichnisbäumen oder Stammbäumen, die Struktur des Internets, Verkehrsnetz als Graph) erkennen und erläutern
    • gleichartige Daten in geeigneten Datenstrukturen zusammenfassen (zum Beispiel Namensliste einer Klasse, Pixel einer Rastergrafik etc.)
    • Handlungsschritte chronologisch ordnen (auch aufgrund von kausalen Zusammenhängen)
    • Teillösungen zur Lösung des Gesamtproblems nutzen
    • Schnittstellen für Teilbereiche definieren, die unabhängig voneinander bearbeitet werden (zum Beispiel Gruppenarbeit, Protokolle bei Client-Server, Parameter und Rückgabewerte bei Unterprogrammen)
  • 2.2 Modellieren und Implementieren
    • 2.2 Modellieren und Implementieren
    • die für die Problemstellung relevanten Informationen herausarbeiten und fehlende beziehungsweise ergänzende Informationen beschaffen
    • für (Teil‑)Abläufe notwendige Eingabedaten und Ergebnisse beschreiben und in Form von Testfällen formalisieren
    • vorliegende Informationen für die Lösung geeignet aufbereiten (zum Beispiel durch Filtern, Reduktion, Kategorisieren)
    • charakteristische und verallgemeinerbare Bestandteile herausarbeiten (Abstraktion)
    • relevante Abläufe, Daten und ihre Beziehungen in informatischen Modellen darstellen
    • passende Strukturen und Lösungsstrategien für gegebene Problemstellungen auswählen
    • geeignete Programme und Hilfsmittel zur grafisch gestützten Modellierung einsetzen
    • unterschiedliche Perspektiven in die Entwicklung einer Lösung miteinbeziehen
    • Abläufe in einer (zum Beispiel grafischen) Programmiersprache implementieren
    • geeignete Codebausteine aus verschiedenen Quellen auswählen, gegebenenfalls adaptieren und in eigene Programme einbauen
    • Programme gezielt gegen vorab formulierte Testfälle testen
    • Fehler in der Implementierung systematisch aufspüren und beheben (zum Beispiel Debugger)
    • die Angemessenheit von Lösungen und die erreichten Resultate bewerten
  • 2.3 Kommunizieren und Kooperieren
    • 2.3 Kommunizieren und Kooperieren
    • fachspezifische Schreib- und Notationsweisen verwenden
    • Sachverhalte, eigene Ideen, Lösungswege und Ergebnisse zielgruppenorientiert und unter Beachtung der informatischen Terminologie erläutern und strukturiert darstellen
    • eigenen und fremden Programmcode in geeigneter Weise kommentieren und dokumentieren
    • vorhandene Dokumentationen und kommentierten Programmcode lesen und verstehen
    • arbeitsteilig als Team ihre Aufgaben planen, strukturieren, ausführen, reflektieren und präsentieren
    • zielorientiert auf einer vorhandenen Infrastruktur kommunizieren und geeignete digitale Werkzeuge zum Teilen von Informationen (zum Beispiel Arbeitsergebnisse, Fragen, Programmcode) einsetzen
    • in Erarbeitung, Kooperation und Darstellung alltagsrelevante rechtliche Regelungen befolgen und verantwortungsvoll mit eigenen und fremden personenbezogenen Daten umgehen
    • charakteristische Merkmale verschiedener Kommunikationsformen (Mensch-Mensch, Mensch-Maschine, Maschine-Maschine) auf Gemeinsamkeiten und Unterschiede analysieren und deren gesellschaftliche Auswirkungen bewerten
    • Sicherheitsaspekte bei ihrem Kommunikationsverhalten berücksichtigen und die gesellschaftliche Relevanz von verschlüsselter Kommunikation reflektieren
    • Aspekte von Toleranz und Akzeptanz von Vielfalt im Kontext informatischer Fragestellungen diskutieren
  • 2.4 Analysieren und Bewerten
    • 2.4 Analysieren und Bewerten
    • durch Analyse (zum Beispiel „gezieltes Anwenden“/Blackbox oder auch Codebetrachtung/Whitebox) Erkenntnisse über das Verhalten von informatischen Systemen gewinnen
    • informatische Modelle mit der jeweiligen Realsituation vergleichen
    • unterschiedliche Lösungsansätze und Vorgehensweisen miteinander vergleichen und bewerten
    • Optimierungsbedarf ermitteln und gegebenenfalls Lösungswege optimieren
    • Kenntnisse über den inneren Ablauf informatischer Systeme im Alltag nutzen
    • Einsatzbereiche und Grenzen von Modellen erkennen
    • Entscheidungen auf der Grundlage informatischen Sachverstands treffen und diese sachegrecht begründen
    • Auswirkungen von Computersystemen auf Gesellschaft, Berufswelt und persönliches Lebensumfeld aus verschiedenen Perspektiven bewerten
    • im Zusammenhang einer digitalisierten Gesellschaft einen eigenen Standpunkt zu ethischen Fragen in der Informatik einnehmen und ihn argumentativ vertreten

Operatoren

Anhänge zu Fachplänen

3.1.2 Al­go­rith­men

Auf­bau­end auf den in Klas­se 7 ken­nen­ge­lern­ten Grund­bau­stei­nen von Al­go­rith­men ver­knüp­fen die Schü­le­rin­nen und Schü­ler die­se Grund­bau­stei­ne sys­te­ma­tisch zu Pro­gram­men, die in ih­rer Kom­ple­xi­tät zu­neh­men.

Durch die Ver­wen­dung von Zu­falls­zah­len er­schließt sich ei­ne Rei­he neu­er Mög­lich­kei­ten, ins­be­son­de­re in den Be­rei­chen Spie­le­pro­gram­mie­rung und Si­mu­la­ti­on so­wie zum Er­zeu­gen von Test­da­ten.

An­hand ge­eig­ne­ter Sze­na­ri­en er­fah­ren die Schü­le­rin­nen und Schü­ler, dass bei der Spei­che­rung von meh­re­ren gleich­ar­ti­gen Da­ten der Ein­satz ein­zel­ner Va­ria­blen nicht mehr sinn­voll ist. Sie ler­nen, wie die­se in ei­ner in­dex­ba­sier­ten Da­ten­struk­tur (zum Bei­spiel Ar­ray, Lis­te) zu­sam­men­ge­fasst wer­den kön­nen. An­hand von Al­go­rith­men, die mit ei­ner Schlei­fe über al­le Wer­te ei­ner Da­ten­struk­tur ite­rie­ren, wer­den die Kon­zep­te von Al­go­rith­men und Da­ten­spei­che­rung mit­ein­an­der ver­knüpft.

Um ih­re Pro­gram­me zu struk­tu­rie­ren und red­un­dan­ten Code zu ver­mei­den, kön­nen sie Un­ter­pro­gram­me nut­zen und da­durch Funk­tio­na­li­tä­ten in ei­ge­ne Pro­gramm­tei­le aus­la­gern.

Die Schü­le­rin­nen und Schü­ler kön­nen

G

M

E

(1)

Lo­gi­sche Ver­knüp­fun­gen (UND, ODER, NICHT) in Be­din­gun­gen von Schlei­fen und Ver­zwei­gun­gen ver­wen­den

(1)

Lo­gi­sche Ver­knüp­fun­gen (UND, ODER, NICHT) in Be­din­gun­gen von Schlei­fen und Ver­zwei­gun­gen ver­wen­den

(1)

Lo­gi­sche Ver­knüp­fun­gen (UND, ODER, NICHT) in Be­din­gun­gen von Schlei­fen und Ver­zwei­gun­gen ver­wen­den

(2)

Zu­falls­zah­len in ei­ge­nen Pro­gram­men ver­wen­den (z. B. um Wür­fel­er­geb­nis­se zu si­mu­lie­ren oder ei­nen Spiel­ver­lauf ab­wechs­lungs­rei­cher zu ge­stal­ten)

(2)

Zu­falls­zah­len in ei­ge­nen Pro­gram­men ver­wen­den (z. B. um Wür­fel­er­geb­nis­se zu si­mu­lie­ren oder ei­nen Spiel­ver­lauf ab­wechs­lungs­rei­cher zu ge­stal­ten)

(2)

Zu­falls­zah­len in ei­ge­nen Pro­gram­men ver­wen­den (z. B. um Wür­fel­er­geb­nis­se zu si­mu­lie­ren oder ei­nen Spiel­ver­lauf ab­wechs­lungs­rei­cher zu ge­stal­ten)

(3)

ei­ne in­dex­ba­sier­te Da­ten­struk­tur zur Spei­che­rung und Ver­ar­bei­tung gleich­ar­ti­ger Da­ten (auch per Ite­ra­ti­on) ver­wen­den

(3)

ei­ne in­dex­ba­sier­te Da­ten­struk­tur zur Spei­che­rung und Ver­ar­bei­tung gleich­ar­ti­ger Da­ten (auch per Ite­ra­ti­on) ver­wen­den

(3)

ei­ne in­dex­ba­sier­te Da­ten­struk­tur zur Spei­che­rung und Ver­ar­bei­tung gleich­ar­ti­ger Da­ten (auch per Ite­ra­ti­on) ver­wen­den

(4)

grund­le­gen­de Al­go­rith­men auf ei­ner in­dex­ba­sier­ten Da­ten­struk­tur (z. B. Fül­len mit Wer­ten, Ma­xi­mum­su­che, Sum­men­bil­dung) im­ple­men­tie­ren

(4)

grund­le­gen­de Al­go­rith­men auf ei­ner in­dex­ba­sier­ten Da­ten­struk­tur (z. B. Fül­len mit Wer­ten, Ma­xi­mum­su­che, Sum­men­bil­dung) be­schrei­ben und im­ple­men­tie­ren

(4)

grund­le­gen­de Al­go­rith­men auf ei­ner in­dex­ba­sier­ten Da­ten­struk­tur (z. B. Fül­len mit Wer­ten, Ma­xi­mum­su­che, Sum­men­bil­dung, Bub­ble­sort) er­läu­tern und im­ple­men­tie­ren

(5)

Un­ter­pro­gram­me ver­wen­den, um Pro­gramm­code zu struk­tu­rie­ren und red­un­dan­ten Code zu ver­mei­den

(5)

Un­ter­pro­gram­me ver­wen­den, um Pro­gramm­code zu struk­tu­rie­ren und red­un­dan­ten Code zu ver­mei­den

(5)

Un­ter­pro­gram­me ver­wen­den, um Pro­gramm­code zu struk­tu­rie­ren und red­un­dan­ten Code zu ver­mei­den


Umsetzungshilfen
Hinweis
Die Beispielcurricula, Synopsen und Kompetenzraster sind bei den inhaltsbezogenen Kompetenzen des jeweiligen Faches zu finden.