Lehrplan PLUS

Direkt zur Hauptnavigation springen, zur Servicenavigation springen, zur Seitennavigation springen, zu den Serviceboxen springen, zum Inhalt springen

Informatik 11

wird überarbeitet

Inf11 Lernbereich 1: Generalisierung (ca. 8 Std.)
Abschnitt zur PDF-Sammlung hinzufügen

Kompetenzerwartungen

Die Schülerinnen und Schüler ...

  • analysieren und ordnen zweckmäßig hierarchische Strukturen aus ihrer Erfahrungswelt (z. B. Klassifizierung von Tieren) und erstellen entsprechende Generalisierungshierarchien in Form von Klassenmodellen.
  • implementieren mithilfe einer objektorientierten Sprache Generalisierungshierarchien unter Berücksichtigung von Vererbung; dabei verwenden sie auch abstrakte Klassen.
  • nutzen zur flexiblen Anpassung verschiedener Verhaltensweisen an den jeweiligen Kontext der Anwendungssituation (z. B. bei der rollenabhängigen Berechnung des Gehalts der Mitarbeiter in einem Unternehmen) zielführend das Konzept der Polymorphie durch Überschreiben von Methoden in Unterklassen.
Inhalte zu den Kompetenzen:
  • Generalisierungshierarchie: Ober- und Unterklasse, grafische Darstellung der hierarchischen Klassenstruktur
  • Generalisierung und Spezialisierung als unterschiedliche Sichtweisen auf dieselbe Klassenbeziehung, Vererbung von Attributen und Methoden auf Unterklassen
  • Abstrakte Klasse: Definition und grundlegende Konzeption, abstrakte Methode
  • Polymorphismus und Überschreiben von Methoden
  • Fachbegriffe: Vererbung, Generalisierung, Spezialisierung, Polymorphismus, Oberklasse, Unterklasse, abstrakte Klasse, abstrakte Methode

Inf11 Lernbereich 2: Die rekursive Datenstruktur Liste (ca. 27 Std.)
Abschnitt zur PDF-Sammlung hinzufügen

Kompetenzerwartungen

Die Schülerinnen und Schüler ...

  • modellieren mithilfe einfach verketteter Listen lineare Datenstrukturen aus verschiedenen Situationen ihres Lebensumfeldes (z. B. Warteschlangen, Listen mit Personendaten). Sie nutzen dabei das Softwaremuster Kompositum und erkennen so den Vorteil einer bewährten Modellierungsstrategie.
  • entwickeln unter Verwendung des Kompositums Algorithmen für die einfach verkettete Liste, um Elemente hinzuzufügen, zu löschen bzw. Berechnungen über die Listenelemente durchzuführen. Sie nutzen dabei das Prinzip der Rekursion als naheliegende Problemlösungsstrategie.
  • implementieren fachgerecht einfach verkettete Listen und die zugehörigen Algorithmen mithilfe einer objektorientierten Programmiersprache.
  • bewerten und vergleichen in konkreten Anwendungssituationen dynamische Listenstrukturen mit der statischen Struktur Feld und schärfen damit ihr Bewusstsein für einen zielgerichteten Einsatz der Datenstrukturen.
  • nutzen bei der Bearbeitung von Anwendungssituationen aus der Praxis durch fachgerechte Anpassung an die konkrete Aufgabenstellung die durch Trennung von Struktur und Inhalt bedingte universelle Einsetzbarkeit verketteter Listen.
Inhalte zu den Kompetenzen:
  • Liste als dynamische Datenstruktur zur Verwaltung von Datenbeständen mit flexibler Anzahl von Elementen versus Feld als statische Datenstruktur.
  • Rekursion, rekursive Abläufe: rekursiver Aufruf, Abbruchbedingung, Aufrufsequenz
  • einfach verkettete Liste: allgemeines Prinzip, rekursive Struktur, ausgewählte und soweit möglich rekursiv definierte Methoden (u. a. zum Einfügen, Entfernen und Suchen von Elementen sowie zur Bestimmung der Listenlänge)
  • Trennung von Struktur und Daten/Inhalt
  • Kompositum (Composite Pattern) als Beispiel eines Softwaremusters
  • Grundprinzip von Stapel (LIFO) und Warteschlange (FIFO) als Spezialfälle der verketteten Liste
  • Fachbegriffe: statische Datenstruktur, dynamische Datenstruktur, (einfach verkettete) Liste, Rekursion, rekursive Methode, rekursiver Aufruf, Abbruchbedingung, Aufrufsequenz, Kompositum, LIFO, FIFO, Softwaremuster

Inf11 Lernbereich 3: Die rekursive Datenstruktur Baum (ca. 15 Std.)
Abschnitt zur PDF-Sammlung hinzufügen

Kompetenzerwartungen

Die Schülerinnen und Schüler ...

  • modellieren unter Berücksichtigung des Softwaremusters Kompositum und des Prinzips der Trennung von Struktur und Daten geordnete Binärbäume zu verschiedenen Problemstellungen ihres Erfahrungsbereiches (z. B. digitales Wörterbuch), in denen eine effiziente Datenhaltung wichtig ist. Durch den erneuten Einsatz des Kompositums erkennen sie die universelle Verwendbarkeit von Softwaremustern.
  • entwickeln rekursive Algorithmen zur Verwaltung der Daten, die in einem Binärbaum abgespeichert sind (insbesondere zur Traversierung eines Binärbaums sowie zum Einfügen und Suchen von Elementen in einem geordneten Binärbaum), und wenden diese Algorithmen an konkreten Beispielen an.
  • implementieren fachgerecht auf Grundlage gegebener Modelle geordnete Binärbäume mithilfe einer objektorientierten Programmiersprache.
  • bewerten und vergleichen geordnete Binärbäume mit verketteten Listen hinsichtlich der Effizienz bei Suchanfragen. Ihnen wird damit bewusst, dass insbesondere ein ausbalancierter geordneter Binärbaum eine in Hinblick auf die Suche sehr effiziente Datenstruktur ist.
  • nutzen bei der Bearbeitung von verschiedenen Anwendungssituationen aus der Praxis (z. B. Speicherung unterschiedlicher Daten wie Lexikoneinträge oder Kundeninformationen in Binärbäumen) eine bereits implementierte Version eines geordneten Binärbaums und passen diese fachgerecht an die konkrete Aufgabenstellung an. Sie vertiefen dabei ihr Verständnis, dass insbesondere durch das Konzept der Trennung von Struktur und Daten grundsätzlich eine Wiederverwendbarkeit der bereits vorliegenden Implementierung möglich ist.
Inhalte zu den Kompetenzen:
  • Baum: Wurzel, Knoten, Kante, Blatt, Pfad, Höhe, Ebene; Binärbaum, Eigenschaften von Binärbäumen: vollständig, balanciert, entartet
  • geordneter Binärbaum: Grundkonzept, Einfügen und Suchen von Elementen
  • Traversierungsstrategien, d. h. Verfahren zur Auflistung aller Elemente eines Binärbaums: Präorder, Inorder, Postorder
  • Fachbegriffe: Höhe, Ebene, Binärbaum (vollständig, balanciert, entartet, geordnet), Traversierung, Präorder, Inorder, Postorder

Inf11 Lernbereich 4: Die Datenstruktur Graph (ca. 13 Std.)
Abschnitt zur PDF-Sammlung hinzufügen

Kompetenzerwartungen

Die Schülerinnen und Schüler ...

  • modellieren sachgerecht vernetzte Strukturen (Graphen) im Rahmen praktischer Fragestellungen, z. B. zur Planung von Verkehrsrouten. Dadurch gewinnen sie einen nachhaltigen Einblick in die umfassende Rolle, die Graphen in vielen Bereichen des Alltags spielen.
  • klassifizieren Graphen allgemein und an konkreten Beispielen anhand ihrer Eigenschaften.
  • implementieren mithilfe einer objektorientierten Programmiersprache und unter Verwendung einer Adjazenzmatrix auf fachgerechte Weise die Datenstruktur Graph.
  • erläutern allgemein und an konkreten Beispielen die Idee der Tiefensuche, formulieren den zugehörigen Algorithmus und wenden diesen an konkreten Beispielen an.
  • beurteilen die Einsetzbarkeit der Tiefensuche hinsichtlich vorgegebener Anforderungen (z. B. Erreichbarkeit sämtlicher Knoten in einem Graphen, kürzester Weg zwischen zwei Knoten).
  • implementieren die Tiefensuche und modifizieren den Algorithmus in geeigneter, vom Anwendungskontext abhängiger Weise (z. B. bei der Auswahl aller Knoten mit bestimmten Eigenschaften).
Inhalte zu den Kompetenzen:
  • Eigenschaften von Graphen: gerichtet, ungerichtet, zusammenhängend, unzusammenhängend, bewertet (gewichtet), unbewertet, mit Zyklen, zyklenfrei, Erreichbarkeit von Knoten
  • Adjazenzmatrix, zweidimensionales Feld
  • Algorithmus zum Graphendurchlauf am Beispiel der Tiefensuche
  • Fachbegriffe: gerichtet, ungerichtet, zusammenhängend, unzusammenhängend, bewertet (gewichtet), unbewertet, mit Zyklen, zyklenfrei, Erreichbarkeit (von Knoten), zweidimensionales Feld, Adjazenzmatrix, Tiefensuche

Inf11 Lernbereich 5: Softwaretechnik – Praktische Softwareentwicklung (ca. 21 Std.)
Abschnitt zur PDF-Sammlung hinzufügen

Kompetenzerwartungen

Die Schülerinnen und Schüler ...

  • erläutern den Ablauf eines Softwareentwicklungsprojekts anhand der typischen Phasen des Wasserfallmodells.
  • planen, strukturieren und koordinieren die Durchführung eines Softwareprojekts zu einer umfangreichen Aufgabenstellung aus der Praxis (z. B. Software zur Inventarverwaltung oder für einen einfachen Routenplaner), indem sie sich an einem etablierten Vorgehensmodell der Softwareentwicklung (z. B. Wasserfallmodell) orientieren. Sie erhalten so einen realistischen Einblick in eine bewährte Vorgehensweise bei der Durchführung komplexer Projekte, wie sie beispielsweise im Berufsalltag auftreten.
  • führen das Softwareprojekt entsprechend ihrer Planung im Team durch und berücksichtigen dabei Grundideen bewährter Softwarearchitekturen, wie z. B. Model-View-Controller (MVC). Sie setzen in diesem Zusammenhang geeignete Modellierungstechniken der Informatik (z. B. Klassen-, Zustandsdiagramme) situationsgerecht ein und implementieren den Systementwurf, ggf. unter Nutzung passender rekursiver dynamischer Datenstrukturen und geeigneter Programmbibliotheken.
  • prüfen und bewerten im laufenden Entwicklungsprozess mithilfe von praktischen Tests zur frühzeitigen Fehlererkennung die Richtigkeit der Softwarekomponenten hinsichtlich der in der Planung erstellten Spezifikation.
  • erstellen eine fachgerechte Dokumentation des Softwareprojekts und präsentieren die Ergebnisse der Projektarbeit in geeigneter Weise.
Inhalte zu den Kompetenzen:
  • Grundlagen der Projektplanung: Zielsetzung, Arbeitsteilung, Schnittstellen, Meilensteine, Lasten- und Pflichtenheft
  • Wasserfallmodell als klassisches Beispiel eines Vorgehensmodells in der Softwareentwicklung mit den typischen Phasen: Analyse, Entwurf, Implementierung, Test, Bewertung und Abnahme
  • Grundkonzept des Softwaremusters Model-View-Controller (MVC)
  • Verwendung von Frameworks oder Bibliotheken, z. B. zur Nutzung einer Datenbank oder von Dateien zur persistenten Datenspeicherung
  • Fachbegriffe: Vorgehensmodell, Wasserfallmodell, Phasen, Meilenstein, Lastenheft, Pflichtenheft, Softwaremuster Model-View-Controller (MVC)