Informatik - Objekte
Für 15-16 jährige SchülerInnen scheint der objektorientierte Ansatz nicht ganz einfach zu sein. Das wird auch daran liegen, dass in diesem Alter das Abstraktionsvermögen noch nicht selbstverständlicher Teil der zur Verfügung stehenden Denkmuster ist. So banal es klingt, dass jeder Gegenstand, fast alles, was mit einem Hauptwort (Substantiv) bezeichnet wird, ein Objekt ist, es scheint auch schwierig zu sein, geeignete Aufgabensrellungen für die ersten objetorientierten Übungsprogramme zu finden.
1) Schreibe eine Klasse für ....
2) Erzeuge ein oder mehrere Objekte davon
3) Schreibe eine Benutzerschnittstelle, um die Eigenschafte des Objektes anzuzeigen, sie zu ändern
4) Erweitere die Benutzerschnittstelle, um Methoden aufzurufen, d.h. auch um diese Methoden zu verwenden, zu testen
5) Erweitere die Benutzerschnittstelle, um das Objekt zu zeichnen
Natürlich eignet sich eine Form in der Regel für eine Benutzerschnittstelle besser als eine Konsolenapplikation.
Für erste Übungen kann man auch eine Konsolenapplikation schreiben.
Beachte auch das Dokument/Daten - Ansicht/Benutzerschnittstelle (Document - View) Konzept.
Es widerspricht zwar einem strengen Dokument / View Konzept, aber zunächst ist es eine gute Lösung, den Code für das Zeichnen eines Objektes auf einer Form oder einem Panel in die Klasse für das Objekt aufzunehmen. Als Argument für die Methode, die man typisch Draw nennt, übergibt man dann das Graphics-Objekt, wie es das Paint-Event als e.Graphics liefert.
Objekt/Klasse: | Person |
Daten/Eigenschaften: | Name, Adresse, Geb. Datum, Tel. Nummer, Größe, Gewicht ... |
Methoden: | Größer werden, dicker werden, |
Objekt/Klasse: | Uhr/Wecker |
Daten/Eigenschaften: | analog / digital, aktuelle Zeit, Zeitzone, Sommer / Winterzeit |
Methoden: | Auf Sommer / Winterzeit umstellen, Zeit setzen, Wecker stellen, Wecker auslösen, Wecker abschalten |
Objekt/Klasse: | Reale Spannungsquelle |
Daten/Eigenschaften: | Quellenspannung, Innenwiderstand, maximale Leistung, Kurzschlußstrom, angehängte Last |
Methoden: | Strom für bestimmt Last berechnen, Klemmenspannung für bestimmte Last berechnen, abgegebene Leistung für bestimmte Last berechnen, Leistung an den Klemmen berechnen |
Objekt/Klasse: | Reale Spannungsquelle |
Daten/Eigenschaften: | Quellenspannung, Innenwiderstand, maximale Leistung, Kurzschlußstrom, angehängte Last |
Methoden: | Strom für bestimmt Last berechnen, Klemmenspannung für bestimmte Last berechnen, abgegebene Leistung für bestimmte Last berechnen, Leistung an den Klemmen berechnen, äquivalente Stromquelle berechnen |
Objekt/Klasse: | Reale Stromquelle |
Daten/Eigenschaften: | Quellenstrom, Innenwiderstand, maximale Leistung, Leerlaufspannung, angehängte Last |
Methoden: | Strom für bestimmt Last berechnen, Klemmenspannung für bestimmte Last berechnen, abgegebene Leistung für bestimmte Last berechnen, Leistung an den Klemmen berechnen, äquivalente Spannungsquelle berechnen |
Objekt/Klasse: | Diverse geometrische Figuren oder Gegenstände: Kreis, Dreick, Quadrat, Rechteck |
Daten/Eigenschaften: | Größe, Position, Fläche, Umfang, Farbe, Material, Lage (z.B. Winkel der Grundkante gegen die x-Achse) |
Methoden: | bewegen, vergrößern, verkleinern, drehen |
Objekt/Klasse: | Masse-Feder-System |
Daten/Eigenschaften: | Masse, Federkonstante, Eigenfrequenz, Periodendauer, Anfangsauslenkung |
Methoden: | Position x (t) berechnen, v(t), a(t), E(t) berechnen, Anfangsenergie zuführen |
Objekt/Klasse: | Vektor |
Daten/Eigenschaften: | x, y, (z), Betrag |
Methoden: | zugehöriger Einheitsvektor, Normalvektor, Vektor drehen |
Objekt/Klasse: | Elektrische Ladung |
Daten/Eigenschaften: | Ladung, Position |
Methoden: | Feldstärke im Punkt (x,y), Kraft auf eine weitere Ladung, Verschieben |
Objekt/Klasse: | Spiel-Würfel |
Daten/Eigenschaften: | Seitenlänge, Anzahl der Flächen |
Methoden: | Würfeln |