Personal tools
You are here: o studio 110 110 OUT code | Inf classes Inf Informatik 10

Die einzige Konstante im Universum ist die Veränderung.

Heraklit von Ephesus

When you need a function, just declare it.

Anonymous 

 

Ego ist eine Illusion.

Marco Asam

Life is like a camera -
focus on what's important
capture the good times,
develop from the negatives
and if things don't work out
take another shot.

Anonymous

reset the rules.

sonnja genia riedl

creativity is subtraction.

Austin Kleon

Art is theft: It's not where you take things from, it's where you take them to. 

Daniel Cordera about the quote of Pablo Picasso

art ist for live, not live for art.

 

 

 

 

 

 

 

 

 

Informatik 10

— filed under: , , ,

Basisinformationen zu Informatik 10. In der Jahrgangsstufe 10 ist der große Themenbereich das Erlernen des objektorientierten Programmierens.

 

Aufgaben in Informatik 10

Wir wiederholen Grundlagen aus der Informatik der Vorjahre und programmieren mit objektorientierter Programmiersprache (Python | Java), OOP.
Konkret fangen wir mit kleineren Übungen an, z.B. mit dem Blocksystem von Scratch (http://scratch.mit.edu) und der graphischen Python turtle Programmierung.
Danach gehts systematisch in Programmierkenntnisse von Python und später auch Java - wir behandeln hier die Unterschiede von Python und Java.
Jeder hat als Aufgabe, ein größeres oder mehrere kleinere Informatik-Projekte mit Python oder Java umzusetzen.

Mögliche Referate Informatik 10 (10 min Vortrag)

wichtig ist hierbei jeweils: Beschreibung | Definition | Beispiel | Abbildung

Bei jedem Referat soll am Ende ein kurzer Hefteintrag (Textpassagen zum Abschreiben bzw./und Graphik oder Abbildung zum Abzeichnen) die letzte Seite sein.

Informatik | Objektorientierte Programmierung mit Python oder Java

      if/else - Bedingung
      while - Schleife
      Objekte | py
      Klassen | py z.B. Liste (unsortiert, sortiert), Liste einfach verkettet, Schlange, Stapel, Baum, Graph (ungewichtet, gewichtet)
      Klassenkarten | py
      Objektkarten | py
      Klassendiagramm
      Objektdiagramm
      Zustandsdiagramm
      Variablen | py
      Methoden | py
      Anweisungen | py
      Strings (Zeichenketten) | py
      Vererbung | py
      Verzweigung/ Rekursion
      Bsp. Koch'sche Schneeflocke
      Bsp. Sierpinski-Dreieck
      Bsp. Fibonacci-Funktion
      Lastenheft/ Pflichtenheft in der Informatik
      Agile Softwareentwicklung (vs Wasserfall-Modell)
      Objektorientierte Programmierung - Diff. python, Java
      Biometrische Daten als Schlüssel 
      Künstliche Intelligenz (Artificial Intelligence AI)   
      Intuitive Bedienbarkeit/ User-Dialog/ GUI - Graphische Oberfläche und optisches Design
      Eclipse-Programmierumgebung 
      Android-Programmierung  
      python-Turtle-Programmierung  
      App-Programmierung

Grundlagen der Informatik

      Geschichte/ Meilensteine der Informatik  
      Klasse Objekt Attribut Methode. Punktnotation  
      Klassenkarte Objektkarte Klassendiagramm | py
      Beziehungen und Kardinalitäten
      Methoden | py
      HTML | atom.io oder notepad++  
      Algorithmus/ algorithmisches Denken
      Struktogramme   
      Baum und Graph | Hierarchische Strukturen 
      Binäres Zahlensystem  
      Rechnerarchitektur

Funktionale Programmierung | py

      Funktionen  
      Vordefinierte Funktionen   
      Funktionen UNDODERNICHT  
      Logische Funktionen  
      Datenflussdiagramm  
      Bedingte Funktion: WENN-Funktion  
      while-Schleife  
      if-/else - Bedingte Anweisung  
      Zusammenfassen von Funktionen  
      Verknüpfung von Tabellen
      Verzweigung im Datenfluss
      Geschichte der Tabellenkalkulation
      Tabellenkalkulation - Buchhaltung  
      Diagramme aus Tabellendaten    
      Kapital-Berechung (Kredit-Aufnahme, Geld-Anlegen, Zinsberechnung mit Zinstagen)
      Zusammengesetzte Daten (z.B. Brüche)
      Verkaufspreis mit Mengenrabatt
      Verkaufspreis mit Skonto 
      Kostenvoranschlag (Rechnung) mit Tabellenkalkulation  
      Adress-Listen mit Tabellen
      Diagramme in Tabellenkalkulation: Entwicklung der Weltbevölkerung 
      Kopieren - relative und absolute Adressen
      Links - lokal und online z.B. in Tabellen  

Datenbanken | py

      DB statt Fkt - warum?
      Datentypen | py
      Relationales Datenbanksystem
      SQL-Abfragen
      Datenbankschema
      Datenpflege (UPDATE, INSERT, DELETE)     
      Datensicherheit und Datenschutz
      Klassendiagramm und Kardinalitäten  
      n:m - Beziehung  
      Das kartesische Produkt
      Aggregat-Funktionen von SQL (COUNT, AVG, MAX, MIN, SUM)
      Schlüssel, Fremdschlüssel und referentielle Integrität
      Datenpflege (Ändern, Einfügen, Löschen von Datensätzen | UPDATE, INSERT, DELETE)
      Änderungsanomalien bei der Datenpflege
      Datenkonsistenz
      Datensicherheit und Datenschutz
      Datenbankschema
      Datenbank-Design  
      Prüfziffer am Bsp. der ISBN-Nummer


Grundwissen Informatik 10

Generell ist eine sich vertiefende und vermehrt systematische Kenntnis einer objektorientierten Programmiersprache (Python | Java) als Grundwissen in Informatik 10 relevant.
 
 
Objekte:
Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder  Strukturen  unserer  Welt  (z.  B. Autos,  Räume,  Bakterien,  Lehrer, Schüler, Kunden, Unterrichtsstunden, Buchungen, Konten, ...). Jedes  Objekt  besitzt  einen  eindeutigen  Bezeichner  (Objektnamen),  mit dem es identifiziert werden kann.
Attribut:
Als Attribute bezeichnet man die Eigenschaften, durch die sich ein Objekt von anderen unterscheidet. Bei jedem Objekt haben die Attribute bestimmte Werte, Attributwerte.
Methode:
Eine Methode ist eine Handlungsanweisung. 

Zur Methodendefinition: Aufbau und Rückgabetypen von Methoden

Methoden_1

Methoden 2

Damit ein Objekt eine Methode ausführt, muss ihm dazu eine Handlungsanweisung gegeben werden, d. h. eine Methode aufgerufen werden.

Zum Methodenaufruf:

objektname.methodenname( wert1, wert2, ...)            z. B.:     max.oeffne(Fenster)

Konstruktor
Ein Konstruktor ist eine spezielle Methode, die ein Objekt der zugehörigen Klasse erstellt und dessen Attributen Startwerte zuweist.

Der Aufruf des Konstriktors mit dem new-Operator erzeugt ein neues Objekt einer Klasse:

new

Klasse (Objekttyp):
Eine   Klasse   ist ein "Bauplan"  für Objekte   mit   gleichen   Attributen   und   gleichen Methoden (alle Auto-Objekte gehören zur Klasse Auto). Wichtig: Alle  Objekte  einer  Klasse,  haben  die  gleichen  Attribute,  aber  nicht  die gleichen Attributwerte!
Klassenkarte:
Klassendiagramm
 Objektkarte:
Objektdiagramm
Algorithmus 
Ein  Algorithmus  ist  eine  Verarbeitungsvorschrift,  die  aus endlich vielen eindeutig ausführbaren Anweisungen besteht.
Struktogramm
Ein  Struktogramm  ist  eine  Darstellung  für  Algorithmen,  die  von  der  konkreten Schreibweise einer bestimmten Programmiersprache unabhängig ist.
Sequenz
Eine Folge von Anweisungen, die nacheinander abgearbeitet werden.
Struktogramm:
Sequenz2
Wiederholung mit fester Anzahl
Soll  eine Sequenz mehrmals  wiederholt  werden  und  steht  die  Anzahl  der Wiederholungen  fest,  verwendet  man  zur  Vereinfachung  die  Wiederholung mit fester Anzahl.
wiederholung mit fester anzahl
Bedingte Wiederholung mit Anfangsbedingung
Die Anweisungen werden wiederholt,  solange  eine  bestimmte  Bedingung erfüllt  ist.  Ist  die  Bedingung  zu  Beginn  nicht  erfüllt,  wird  die  Wiederholung kein einziges Mal ausgeführt.
Bedingte Wiederholung mit Anfangsbedingung

Bedingte Wiederholung mit Endbedingung
Die Anweisungen werden auf jeden Fall einmal ausgeführt,  egal ob die Bedingung zutrifft oder nicht.  Sie werden wiederholt, solange die Bedingung erfüllt ist. 
Bedingte Wiederholung mit Endbedingung
Einseitig bedingte Anweisung
Die  einseitig  bedingte  Anweisung wird verwendet, um eine Sequenz abhängig von einer Bedingung auszuführen.
Einseitig bedingte Anweisung
Zweiseitig bedingte Anweisung
Die  zweiseitige  bedingte  Anweisung  wird  verwendet,  wenn abhängig  von einer Bedingung unterschiedliche Sequenzen ausgeführt werden sollen.
Zweiseitig bedingte Anweisung
Mehrfachauswahl
Mit der Mehrfachauswahl können beliebig viele Fälle untersucht werden. Die zu überprüfende Variable muss als Datentyp byte, short, int, char, String haben.
Mehrfachauswahl
Feld (Array)
In   einem   Feld   können   mehrere   Werte   eines   Datentyps   abgespeichert werden. Deklaration eines Felds:

private double[] zahlen;

Initialisierung eines Felds mit der Länge 10:

zahlen = new double[10];

Speichern eines Wertes unter dem Index i:

zahlen[i] = 10.3;

Feld durchlaufen und Inhalt ausgeben:

   for (int i = 0; i < zahlen.length; i = i+1) {
     System.out.println( (i+1) + “: “ + zahlen[i] );
   }
Vererbung
Vererbung   beschreibt   eine   neue   Beziehung   zwischen   einer   Oberklasse (Superklasse) und einer Unterklasse (Subklasse oder abgeleitete Klasse). Die   Unterklasse   erbt   (erhält)   von   der   Oberklasse   alle   Attribute   und Methoden.  Hat  die  Oberklasse  eine  Beziehung  zu  einer  anderen  Klasse,  so hat auch die Unterklasse diese Beziehung.
vererbung
Umsetzung in Java:

public class Unterklasse extends Oberklasse {
...
   public Unterklasse(...) {
     super();
   }
...
}
Durch  den  Aufruf  super();  wird  zuerst  der  Konstruktor  der  Oberklasse aufgerufen.

Polymorphie
Man spricht von Polymorphie, wenn gleichnamige Methoden unterschiedliche Definitionen bzw. Implementierungen haben. Polymorphie wird durch Überschreiben der geerbten Methoden bewirkt

Quelle: angelehnt an: http://www.mgf-kulmbach.de/neu/images/medien/unterrichtsfaecher/Informatik/grundwissen/inf10-grundwissen.pdf

s Tipps | Informatik  

Programmiere ein eigenes Informatik-Projekt - zusätzlich zu den Unterrichts-Projekten in Informatik. Ich helfe Dir sehr gerne.

Sonnja Genia Riedl

Document Actions