Bildbearbeitung/Memes erstellen und Java/Glossar: Unterschied zwischen den Seiten

Aus ZUM-Unterrichten
< Bildbearbeitung(Unterschied zwischen Seiten)
(l korr)
Markierung: 2017-Quelltext-Bearbeitung
 
main>ZUM-Wiki-Bot
(</source>)
 
Zeile 1: Zeile 1:
Der Aufbau folgt einer Unterrichtsreihe, angefangen von ersten Berührungen mit Grafiken am Beispiel von [https://de.wikipedia.org/wiki/Internetph%C3%A4nomen Memes] über Grundlagen und Möglichkeiten der Bildbearbeitung hin zu rechtlichen und gesellschaftlichen Aspekten.
{{Kurzinfo-3|Java|Links|Software}}
==Java Glossar==


'''Warum dieses Thema und warum so?'''
===Begriffliche Grundlagen===
Kombination von technischen, anwendungsorientierten und gesellschaftlichen Aspekten.


Siehe [http://wiki.doebe.li/Dagstuhl/BeispielBildbearbeitung Dagstuhl-Dreieck: BeispielBildbearbeitung]
;'''Objektorientierte Programmierung (OOP)'''
{{Zitat wpde|Objektorientierte Programmierung ist ein Verfahren zur Strukturierung von Computerprogrammen, bei dem zusammengehörige Daten und die darauf arbeitende Programmlogik zu Einheiten zusammengefasst werden, den sogenannten Objekten.|Objektorientierte Programmierung|13.02.2006}}


== Was sind Memes? Welche Memes kennt und benutzt ihr? ==
Sammeln von bekannten grafischen Memes und erstellen eigener mit einem Online-Generator, z.B. [https://imgflip.com/memegenerator meme generator]


== Wie ist eine Bilddatei aufgebaut? ==
===[[Klasse (Informatik)]]===  
* Öffnen einer Bilddatei in einem Grafikprogramm, Zoomen bis Pixel deutlich werden.
Eine '''Klasse''' dient als Vorlage für Objekte. In ihr werden Attribute und Operationen definiert, die jedes Objekt dieser Klasse besitzt.
* Aufbau von Pixelgrafiken und RGB Farbmodell
* Thematisieren: Auflösung, Dateigröße, Kennzahl Megapixel der eigenen Smartphone Kamera


Material:
Der Quelltext einer Klasse ist in Java immer ähnlich aufgebaut:
* [http://www.inf-schule.de/information/darstellunginformation/binaerdarstellungbilder/einstieg_farbwerte Material zum RGB-Farbmodel und PPM-Format]
<source lang="java">    class Klassenname {
* [https://play.kahoot.it/#/k/521d78a8-d9d0-4dca-9a37-e47e12ffc645 Kahoot zu Grundlagen]


== Eigenes Bild bearbeiten ==
    // Eigenschaften
* [http://www.easy4me.info/ie/ Arbeitsblätter für GIMP/Photoshop]
* [http://www.swisseduc.ch/geschichte/bildbearbeitung/videotutorials/index.html Videotutorials von zu Pixlr]


Beispiel für Aufgabe: Retuschiere ein eigenes Foto von dir und kombiniere es mit einem anderen Bild. Einige Anregungen, wo du dich selbst hinein-montieren könntest: Ein Werbeplakat, Ein Kinoplakat, Ein CD-Cover
    ...


== Rechtliches ==
    // Konstruktor
* [[Lernpfad_Internet/Urheberrecht#Veröffentlichen im Internet]]


== Manipulation durch Bilder ==
    ...
* [http://www.swisseduc.ch/geschichte/bildbearbeitung/ Die Macht der Bilder] (Beispiel aus dem Geschichtsunterricht)
* zeit.de: [http://www.zeit.de/2015/28/fotografie-wahrheit-luege-propaganda/komplettansicht Diese Bilder lügen] (Hintergrundartikel)
* TODO: Online Links zu Beispielen


== Animationen und Dateiformat ==
    // Methoden
* [https://vimeo.com/6175054 Video zum Projekt Blinkenlights]


Aufgabe: Erstelle mit dem Programm [http://blinkenlights.de/blinkenlights/blinkenpaint Blinkenpaint] eine animierte Pixelgrafik. Exportiere deine Animation als BLM-Datei und betrachte sie mit einem Text-Editor. Was vermutest du: Wie speichert der Computer hier die Informationen?
    ...


Danach: Was müsste man tun, damit ein Haus auch Grafiken in Farbe anzeigen kann? -> Sus erweitern das Format um Farbe
    } // Ende der Klasse
</source>
;Hinweise
* Eine Klasse muss nicht unbedingt Eigenschaften haben, auch der Konstruktor ist nicht immer erforderlich. Theoretisch ist auch eine Klasse ohne Methoden denkbar.
* Jede Methode muss in einer Klasse stehen. Auch wenn Sie nur ein kleines Programm ausprobieren möchten, muss als Rahmen eine Klasse eingerichtet werden. Zum Testen einer eigenständigen Methode bietet sich an, sie als "static" zu deklarieren. Dann müssen Sie nicht erst ein Objekt bilden, um die Methode aufrufen zu können.
* Lässt man den Konstruktor weg, so erhalten die Eigenschaften die "default"-Werte. Das sind für Zahlen die 0 und für Strings und andere Klassen null.


== Diverses, teils Amüsantes für Einstiege==
;Vertiefung
* [https://www.youtube.com/watch?v=Hnvoz91k8hc Photoshop Has Gone Too Far]
* http://de.wikibooks.org/wiki/Java_Standard:_Klassen
* [https://www.youtube.com/watch?v=_hxlnb5yb_k&index=5&list=PLHeo4sayeLKoQKQnQFU8aEkLk_Hv1dU6M Photoshop-Phillip]
* [https://www.slanted.de/eintrag/pixel-book Pixel Book: Schnell erkennbare Figuren als einfache Pixelgrafiken]
* [http://www.themarysue.com/star-trek-pixel-poster-is-a-rare-adorable-puzzle/ Star Trek Pixels Poster]
* [https://www.youtube.com/watch?v=Vx-1LQu6mAE Varoufake]
* [https://wdune.ourproject.org/docs/deutsche_tutorials.html Tutorials für das CAD Programm white_dune]


;Gleichheit Und Identität von Objekten
Objekte sind '''gleich''', wenn sie die gleichen Attributeigenschaften besitzen, wenn also ihr Zustand gleich ist. '''Identisch''' sind sie, wenn es sich dabei um das selbe Objekt handelt.


[[Kategorie:Grafik]]
===Wichtige Datentypen===
[[Kategorie:Informatik]]
* boolean - Wahrheitswert (true / false)
[[Kategorie:Unterrichtsidee]]
* int - ganze Zahl
* double - Dezimalzahl (genauer: Fließkommazahl)
* char - ein Zeichen
* String - Zeichenkette (kein primitiver Datentyp)
 
;Vertiefung
http://de.wikibooks.org/wiki/Java_Standard:_Primitive_Datentypen
 
===Kommentar===
 
// - Kommentarzeile: Ein doppelter Slash definiert die aktuelle Zeile als Kommentar. Kommentare benutzt man, um Quelltexte verständlicher zu machen und zur Fehlersuche (Zeile auskommentieren, um zu sehen, ob der Fehler in dieser Zeile war).
 
===Standardausgabe===
System.out.println (...);    Gibt Text auf der Konsole aus
 
;Beispiele:
<source lang="java">
    System.out.println ("Hallo Welt"); // Zeichenketten (in Anführungsstrichen)
 
    System.out.println (3*7+2*9); // Rechnungen
 
    System.out.println (zahl); // Variablen, Parameter oder Eigenschaften (ohne Anführungsstriche)
    System.out.println ("Die Zahl ist " + zahl); // Kombinationen daraus
</source>
 
===if ... else...===
 
* Wenn die Bedingung zutrifft, dann führe Anweisungsblock 1 aus, ansonsten (else) führe Anweisungsblock 2 aus.
* Eine der beiden Möglichkeiten wird ausgeführt
* Die geschweiften Klammern zeigen, was noch zum if und was zum else gehört.
* In Bedingung können folgende Operatoren verwendet werden:
<pre>
      < (kleiner)
      > (größer)
      <= (kleiner gleich)
      >= (größer gleich)
      == (gleich mit zwei == Zeichen)
      != (ungleich)
</pre>
;Link und Vertiefung
* http://de.wikibooks.org/wiki/Java_Standard:_Operatoren#Relationale_Operatoren
* http://de.wikibooks.org/wiki/Java_Standard:_Kontrollstrukturen#Verzweigung_.28if.29
 
;Syntax:
<source lang="java">
    if (Bedingung) {
 
    ... // Anweisungsblock 1
 
    }
 
    else {
 
    ... // Anweisungsblock 2
 
    }
</source>
;Beispiel:  
<source lang="java">
    if (zahl == 0) {
 
    System.out.println("Die Zahl ist Null");
 
    }
 
    else {
 
    System.out.println("Die Zahl ist nicht Null");
    }
</source>
 
== Siehe auch ==
* [[Java]]
 
 
[[Kategorie:Java]]

Version vom 25. November 2009, 21:37 Uhr

Vorlage:Kurzinfo-3

Java Glossar

Begriffliche Grundlagen

Objektorientierte Programmierung (OOP)
Objektorientierte Programmierung ist ein Verfahren zur Strukturierung von Computerprogrammen, bei dem zusammengehörige Daten und die darauf arbeitende Programmlogik zu Einheiten zusammengefasst werden, den sogenannten Objekten.

Wikipedia-logo.png Programmierung Objektorientierte Programmierung, Wikipedia – Die freie Enzyklopädie, 13.02.2006 - Der Text ist unter der Lizenz „Creative Commons Attribution/Share Alike“ verfügbar; zusätzliche Bedingungen können anwendbar sein. Siehe die Nutzungsbedingungen für Einzelheiten. In der Wikipedia ist eine Liste der Autoren verfügbar.

Die Vorlage Java/Glossar wird auf folgenden Seiten verwendet


Klasse (Informatik)

Eine Klasse dient als Vorlage für Objekte. In ihr werden Attribute und Operationen definiert, die jedes Objekt dieser Klasse besitzt.

Der Quelltext einer Klasse ist in Java immer ähnlich aufgebaut:

    class Klassenname {

    // Eigenschaften

    ...

    // Konstruktor

    ...

    // Methoden

    ...

    } // Ende der Klasse
Hinweise
  • Eine Klasse muss nicht unbedingt Eigenschaften haben, auch der Konstruktor ist nicht immer erforderlich. Theoretisch ist auch eine Klasse ohne Methoden denkbar.
  • Jede Methode muss in einer Klasse stehen. Auch wenn Sie nur ein kleines Programm ausprobieren möchten, muss als Rahmen eine Klasse eingerichtet werden. Zum Testen einer eigenständigen Methode bietet sich an, sie als "static" zu deklarieren. Dann müssen Sie nicht erst ein Objekt bilden, um die Methode aufrufen zu können.
  • Lässt man den Konstruktor weg, so erhalten die Eigenschaften die "default"-Werte. Das sind für Zahlen die 0 und für Strings und andere Klassen null.
Vertiefung
Gleichheit Und Identität von Objekten

Objekte sind gleich, wenn sie die gleichen Attributeigenschaften besitzen, wenn also ihr Zustand gleich ist. Identisch sind sie, wenn es sich dabei um das selbe Objekt handelt.

Wichtige Datentypen

  • boolean - Wahrheitswert (true / false)
  • int - ganze Zahl
  • double - Dezimalzahl (genauer: Fließkommazahl)
  • char - ein Zeichen
  • String - Zeichenkette (kein primitiver Datentyp)
Vertiefung

http://de.wikibooks.org/wiki/Java_Standard:_Primitive_Datentypen

Kommentar

// - Kommentarzeile: Ein doppelter Slash definiert die aktuelle Zeile als Kommentar. Kommentare benutzt man, um Quelltexte verständlicher zu machen und zur Fehlersuche (Zeile auskommentieren, um zu sehen, ob der Fehler in dieser Zeile war).

Standardausgabe

System.out.println (...); Gibt Text auf der Konsole aus

Beispiele
    System.out.println ("Hallo Welt"); // Zeichenketten (in Anführungsstrichen)

    System.out.println (3*7+2*9); // Rechnungen

    System.out.println (zahl); // Variablen, Parameter oder Eigenschaften (ohne Anführungsstriche)
    System.out.println ("Die Zahl ist " + zahl); // Kombinationen daraus

if ... else...

  • Wenn die Bedingung zutrifft, dann führe Anweisungsblock 1 aus, ansonsten (else) führe Anweisungsblock 2 aus.
  • Eine der beiden Möglichkeiten wird ausgeführt
  • Die geschweiften Klammern zeigen, was noch zum if und was zum else gehört.
  • In Bedingung können folgende Operatoren verwendet werden:
      < (kleiner)
      > (größer)
      <= (kleiner gleich)
      >= (größer gleich)
      == (gleich mit zwei == Zeichen)
      != (ungleich)
Link und Vertiefung
Syntax
    if (Bedingung) {

    ... // Anweisungsblock 1

    }

    else {

    ... // Anweisungsblock 2

    }
Beispiel
    if (zahl == 0) {

    System.out.println("Die Zahl ist Null");

    }

    else {

    System.out.println("Die Zahl ist nicht Null");
    }

Siehe auch