<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.stageing.freitagsrunde.org//api.php?action=feedcontributions&amp;feedformat=atom&amp;user=130.149.4.49</id>
	<title>FreitagsrundenWiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.stageing.freitagsrunde.org//api.php?action=feedcontributions&amp;feedformat=atom&amp;user=130.149.4.49"/>
	<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//Spezial:Beitr%C3%A4ge/130.149.4.49"/>
	<updated>2026-10-29T03:13:38Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.45.6</generator>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs2006/Java_Kurzreferenz&amp;diff=7240</id>
		<title>Javakurs2006/Java Kurzreferenz</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs2006/Java_Kurzreferenz&amp;diff=7240"/>
		<updated>2006-04-05T09:31:02Z</updated>

		<summary type="html">&lt;p&gt;130.149.4.49: /* Funktionen (Methoden) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hier befindet sich eine kleine &#039;&#039;&#039;Referenz für Java&#039;&#039;&#039; speziell für den Javakurs der Freitagsrunde.&lt;br /&gt;
&lt;br /&gt;
== Kommentare ==&lt;br /&gt;
Ein &#039;&#039;&#039;Kommentar&#039;&#039;&#039; ist ein Abschnitt des Java-Codes, der vom Java-Compiler ignoriert wird.  Man kann in ein Kommentar also schreiben was man will.  Kommentare sind nützlich, um den Quellcode zu dokumentieren.  &lt;br /&gt;
&lt;br /&gt;
In Java gibt es zwei Arten von Kommentaren: &lt;br /&gt;
&lt;br /&gt;
===Kommentare über eine Zeile===&lt;br /&gt;
&lt;br /&gt;
 // Diese ganze Zeile wird vom Compiler ignoriert.&lt;br /&gt;
 int x= 5;  // Dieser  Kommentar beginnt mit »//«.  Alles davor wird vom Compiler nicht ignoriert.&lt;br /&gt;
&lt;br /&gt;
===Kommentare über mehrere Zeilen===&lt;br /&gt;
&lt;br /&gt;
 /* Dieser &lt;br /&gt;
    Kommentar&lt;br /&gt;
    erstreckt &lt;br /&gt;
    sich &lt;br /&gt;
    über&lt;br /&gt;
    mehrere&lt;br /&gt;
    Zeilen.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
Zum Vergleich: in Opal werden Kommentare mit -- eingeführt.&lt;br /&gt;
&lt;br /&gt;
=== Javadoc-Kommentare ===&lt;br /&gt;
Um Programme zu dokumentieren gibt es in Java ein Tool: Javadoc. Damit lassen sich HTML-Seiten generieren, die informationen über eure Methoden und Klassen beinhalten.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  Dies ist ein Javadoc-Kommentar &lt;br /&gt;
  und erscheint später in eurer Dokumentation.&lt;br /&gt;
  Was es für Optionen gibt, fragt eure Tutoren ;)&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
== Datentypen (Variablen) ==&lt;br /&gt;
{| border=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; width=&amp;quot;80%&amp;quot; rules=&amp;quot;all&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; background-color:#F9F9F9; font-size:95%; empty-cells:show;&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:#ABCDEF;&amp;quot; | Typ &lt;br /&gt;
! style=&amp;quot;background-color:#ABCDEF;&amp;quot; | Speicherbedarf&lt;br /&gt;
! style=&amp;quot;background-color:#ABCDEF;&amp;quot; | Bereich&lt;br /&gt;
|- &lt;br /&gt;
|void&lt;br /&gt;
|0 Byte&lt;br /&gt;
|keiner&lt;br /&gt;
|- &lt;br /&gt;
|boolean&lt;br /&gt;
|1 Byte&lt;br /&gt;
|true, false&lt;br /&gt;
|-&lt;br /&gt;
|int&lt;br /&gt;
|4 Byte&lt;br /&gt;
| -2.147.483.648 bis 2.147.483.647&lt;br /&gt;
|- &lt;br /&gt;
|short&lt;br /&gt;
|2 Byte&lt;br /&gt;
| -32.768 bis 32.787&lt;br /&gt;
|- &lt;br /&gt;
|long&lt;br /&gt;
|8 Byte&lt;br /&gt;
| -9.223.372.036.854.775.808L bis 9.223.372.036.854.775.807L&lt;br /&gt;
|- &lt;br /&gt;
|byte&lt;br /&gt;
|1 Byte&lt;br /&gt;
| -128 bis 127&lt;br /&gt;
|- &lt;br /&gt;
|float&lt;br /&gt;
|4 Byte&lt;br /&gt;
| +/-3,40282347E+38F&lt;br /&gt;
|- &lt;br /&gt;
|double&lt;br /&gt;
|8 Byte&lt;br /&gt;
| +/-1,79769313486231570E+308&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Boolsche Operatoren ==&lt;br /&gt;
{| border=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; width=&amp;quot;80%&amp;quot; rules=&amp;quot;all&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; background-color:#F9F9F9; font-size:95%; empty-cells:show;&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:#ABCDEF;&amp;quot; | Operator&lt;br /&gt;
! style=&amp;quot;background-color:#ABCDEF;&amp;quot; | Beispiel&lt;br /&gt;
! style=&amp;quot;background-color:#ABCDEF;&amp;quot; | Ergebnis des Beispiels&lt;br /&gt;
|- &lt;br /&gt;
| ==  &lt;br /&gt;
&#039;&#039;(gleich)&#039;&#039;&lt;br /&gt;
| 4 == 9&lt;br /&gt;
| false&lt;br /&gt;
|-&lt;br /&gt;
| !=  &lt;br /&gt;
&#039;&#039;(ungleich)&#039;&#039;&lt;br /&gt;
| 4 != 8&lt;br /&gt;
| true&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;&amp;amp;  &lt;br /&gt;
&#039;&#039;(logisches UND)&#039;&#039;&lt;br /&gt;
| false &amp;amp;&amp;amp; true&lt;br /&gt;
| false, es wird erst der linke Ausdruck ausgewertet. Wenn die Auswertung false ergibt, wird der rechte Ausdruck nicht mehr geprüft, da das Ergebnis nicht mehr true werden kann.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;||&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&#039;&#039;(logisches ODER)&#039;&#039;&lt;br /&gt;
| true &amp;lt;nowiki&amp;gt;||&amp;lt;/nowiki&amp;gt; false&lt;br /&gt;
| true,  es wird erst der linke Ausdruck ausgewertet. Wenn die Auswertung true ergibt, wird der rechte Ausdruck nicht mehr geprüft, da das Ergebnis nicht mehr false werden kann.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;, &amp;lt;=, &amp;gt;, &amp;gt;=, &amp;lt;&amp;gt;&lt;br /&gt;
| 1 &amp;lt; 3  &#039;&#039;(hier exempalrisch nur eins)&#039;&#039;&lt;br /&gt;
| true&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Bitoperatoren ==&lt;br /&gt;
{| border=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; width=&amp;quot;80%&amp;quot; rules=&amp;quot;all&amp;quot; style=&amp;quot;margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; background-color:#F9F9F9; font-size:95%; empty-cells:show;&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:#ABCDEF;&amp;quot; | Operator&lt;br /&gt;
! style=&amp;quot;background-color:#ABCDEF;&amp;quot; | Beschreibung&lt;br /&gt;
! style=&amp;quot;background-color:#ABCDEF;&amp;quot; | Erklärung&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;&lt;br /&gt;
| AND&lt;br /&gt;
| Wie das logische UND, jedoch werden auf jeden Fall beide Seiten ausgewertet.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;|&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| OR&lt;br /&gt;
| Wie das logische ODER, jedoch werden auf jeden Fall beide Seiten ausgewertet.&lt;br /&gt;
|-&lt;br /&gt;
| ^&lt;br /&gt;
| XOR&lt;br /&gt;
| XOR halt.&lt;br /&gt;
|-&lt;br /&gt;
| ~&lt;br /&gt;
| NOT&lt;br /&gt;
| Negation des Wertes.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Konstanten ==&lt;br /&gt;
* In Java werden Konstanten mit dem Schlüsselwort &#039;&#039;&#039;final&#039;&#039;&#039; bezeichnet. In Java gibt es die Konvention Konstanten komplett groß zu schreiben:&lt;br /&gt;
&lt;br /&gt;
 final double PI = 3.14;&lt;br /&gt;
&lt;br /&gt;
== Zuweisungen und Initialisierungen ==&lt;br /&gt;
Wenn man eine Variable erstellt und sie mit Werten füllen will, wird man auf folgende Syntax stoßen:&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;Datentyp&#039;&#039; Variablenname = &#039;&#039;Initialisierungswert&#039;&#039;;&lt;br /&gt;
&lt;br /&gt;
Es gibt zwei Möglichkeiten diese Aktion durchzuführen:&lt;br /&gt;
* lange Variante:&lt;br /&gt;
 int zahl;&lt;br /&gt;
 zahl = 23;&lt;br /&gt;
&lt;br /&gt;
* kurze Variante:&lt;br /&gt;
 int zahl = 23;&lt;br /&gt;
&lt;br /&gt;
= if-Anweisung =&lt;br /&gt;
* Die einfachste Variante:&lt;br /&gt;
&lt;br /&gt;
 if (condition) {&lt;br /&gt;
    &#039;&#039;Anweisungen;&#039;&#039;	&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
* Zusätlich hat diese Variante einen alternativen Anweisungsblock. Wenn &#039;&#039;condition&#039;&#039; nicht erfüllt gehe in den &#039;&#039;else&#039;&#039;-Zweig und führe dort die Anweisungen aus.&lt;br /&gt;
&lt;br /&gt;
 if (condition) {&lt;br /&gt;
    &#039;&#039;Anweisungen;&#039;&#039;	&lt;br /&gt;
 } else {&lt;br /&gt;
    &#039;&#039;Anweisungen;&#039;&#039;&lt;br /&gt;
 }&lt;br /&gt;
	&lt;br /&gt;
* Natürlich lassen sich beide Varianten schachteln. Man kann also auf zwei Bedingungen prüfen und bei nicht Eintreffen in den &#039;&#039;else&#039;&#039;-Zweig gehen.&lt;br /&gt;
		&lt;br /&gt;
 if (condition) {&lt;br /&gt;
    &#039;&#039;Anweisungen;&#039;&#039;	&lt;br /&gt;
 } else if (condition) {&lt;br /&gt;
    &#039;&#039;Anweisungen;&#039;&#039;			&lt;br /&gt;
 } else {&lt;br /&gt;
    &#039;&#039;Anweisungen;&#039;&#039;		&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Schleifen =&lt;br /&gt;
== for-Schleife ==&lt;br /&gt;
* Um über Array&#039;s zu wandern bietet sich die for-Schleife an. Als erstes in der Klammer muß eine Laufvariable deklariert und mit einem Wert initialisiert werden (hier int i= 0). Danach muß eine Bedingung erfüllen, um festzulegen bis wann die Schleife ausgeführt wird (i &amp;lt; 10). Als letztes muß die Laufvariable verändert werden, so daß irgendwann der Abbruch eintritt (i++).&lt;br /&gt;
&lt;br /&gt;
 for (int i = 0; i &amp;lt; 10; i++) {&lt;br /&gt;
 &lt;br /&gt;
    &#039;&#039;Anweisungen;&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
== while-Schleife ==&lt;br /&gt;
* Die while-Schleife wird meistens dafür benutzt, Anweisungen auszuführen bis irgendetwas eintrifft (z.B. EOF -End Of File). Für Arrays sollte man die for-Schleife nehmen. Die while-Schleife lässt sich auch als for-Schleife schreiben.&lt;br /&gt;
&lt;br /&gt;
 while (condition) {&lt;br /&gt;
     &#039;&#039;Anweisungen;&#039;&#039;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
= switch-case =&lt;br /&gt;
* Wenn man verschiedene Werte abfangen möchte, wie zum Beispiel verschiedene Zahlen (bei einem Menü). Gehen wir mal davon aus, daß wir drei Menüeinträge haben: &lt;br /&gt;
# &#039;&#039;1&#039;&#039;&lt;br /&gt;
# &#039;&#039;2&#039;&#039;&lt;br /&gt;
# &#039;&#039;0&#039;&#039; &lt;br /&gt;
&#039;&#039;1&#039;&#039; gibt die Zahl &#039;&#039;&#039;1&#039;&#039;&#039;, &#039;&#039;2&#039;&#039; gibt die Zahl &#039;&#039;&#039;2&#039;&#039;&#039; aus und &#039;&#039;0&#039;&#039; beendet das Programm, dann ist key zum Beispiel ein &#039;&#039;&#039;int&#039;&#039;&#039; und &#039;&#039;&#039;value&#039;&#039;&#039; würde den einzelnen Menüpunkten entsprechen. Das &#039;&#039;break&#039;&#039; bewirkt ein raussprigen aus dem switch-Konstrukt. Würde man das &#039;&#039;break&#039;&#039; weglassen, würden sämtliche Anweisungen die direkt darunter folgen, ausgeführt werden.&lt;br /&gt;
&lt;br /&gt;
 switch (key) {&lt;br /&gt;
    case value: {&lt;br /&gt;
       &#039;&#039;Anweisungen;&#039;&#039;&lt;br /&gt;
       break;&lt;br /&gt;
    }&lt;br /&gt;
    default: {&lt;br /&gt;
       &#039;&#039;Anweisungen;&#039;&#039;&lt;br /&gt;
       break;&lt;br /&gt;
    }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
= Grundgerüst eines Javaprogramms=&lt;br /&gt;
&lt;br /&gt;
Da der Programmierer vom Kopieren lebt, schreibt er einmal eine Schablone und benutzt sie immer wieder, frei nach dem Motto: Man muß das Rad nicht zweimal erfinden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
So sieht zum Beispiel ein simples Javaprogramm ohne Handlung aus:&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
 public class Klassenname {&lt;br /&gt;
 &lt;br /&gt;
 	/**&lt;br /&gt;
 	 * @param args&lt;br /&gt;
 	 */&lt;br /&gt;
 	public static void main(String[] args) {&lt;br /&gt;
 		// TODO Anweisungen&lt;br /&gt;
 &lt;br /&gt;
 	}&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Erläuterungen:&#039;&#039;&#039;&lt;br /&gt;
@param ist für das Dokumentationssystem Javadoc, wird im Javakurs vielleicht angesprochen, sollte aber erstmal zweitrangig sein. Dennoch ist Dokumentation wichtiger als der eigentliche Code und deshalb hier erwähnt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Funktionen (Methoden) =&lt;br /&gt;
In Java programmiert man meistens Objektorientiert, es sei denn man belegt Info2. Funktionen heißen bei Java Methoden und Methoden sind Objekten zugeordnet, es sei denn man programmiert nicht Objektorientiert.&lt;br /&gt;
Eine Methode hat immer folgenden Aufbau:&lt;br /&gt;
&lt;br /&gt;
 Spezialoption &#039;&#039;Veröffentlichungsart&#039;&#039; &#039;&#039;&#039;Rückgabewert&#039;&#039;&#039; Funktionsname &#039;&#039;&#039;(&#039;&#039;&#039; Parametertyp &#039;&#039;Parametername&#039;&#039; &#039;&#039;&#039;)&#039;&#039;&#039; {&lt;br /&gt;
 &lt;br /&gt;
    Methodenrumpf_mit_Anweisungen;&lt;br /&gt;
 &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Spezialoption:&lt;br /&gt;
* static&lt;br /&gt;
* final&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Veröffentlichungsart&#039;&#039;:&lt;br /&gt;
* public&lt;br /&gt;
* protected&lt;br /&gt;
* private&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Spezialoption&amp;quot; und &amp;quot;Veröffentlichungsart&amp;quot; werden in Java unter dem Begriff &#039;&#039;Modifier&#039;&#039; zusammengefasst. Eine Auflistung der Modifier gibt es [http://www.javacamp.org/javaI/modifier.html hier].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Rückgabewert&#039;&#039;&#039;:&lt;br /&gt;
* sämtliche oben aufgeführte Datentypen &lt;br /&gt;
* eigene Datentypen&lt;br /&gt;
&lt;br /&gt;
Funktionsname:&lt;br /&gt;
* einen für die Funktion bezeichnenden Namen aus Buchstaben, Zahlen und dem Underscore ( &#039;&#039;_&#039;&#039; )&lt;br /&gt;
* darf nicht mit eine Zahl beginnen&lt;br /&gt;
&lt;br /&gt;
Parametertyp:&lt;br /&gt;
* wie &#039;&#039;&#039;Rückgabewert&#039;&#039;&#039;, siehe oben&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Parametername&#039;&#039;:&lt;br /&gt;
* wie Funtionsname, siehe oben&lt;br /&gt;
&lt;br /&gt;
= Ausgabe =&lt;br /&gt;
* Um Fehler finden zu können oder Ausgaben auf der Konsole zu machen, gibt es in Java &#039;&#039;print&#039;&#039;-Funktionen:&lt;br /&gt;
&lt;br /&gt;
 System.out.print(&amp;quot;Irgend ein String.&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
Gibt &#039;&#039;Irgend ein String.&#039;&#039; auf der Konsole aus ohne einen Zeilenumbruch.&lt;br /&gt;
&lt;br /&gt;
 System.out.println(&amp;quot;Noch ein String.&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
Gibt &#039;&#039;Noch ein String.&#039;&#039; auf der Konsole aus allerdings diesmal mit einem Zeilenumbruch.&lt;/div&gt;</summary>
		<author><name>130.149.4.49</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Benutzer:Martin_H%C3%A4cker/Java_Kurs&amp;diff=6478</id>
		<title>Benutzer:Martin Häcker/Java Kurs</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Benutzer:Martin_H%C3%A4cker/Java_Kurs&amp;diff=6478"/>
		<updated>2006-03-25T15:52:33Z</updated>

		<summary type="html">&lt;p&gt;130.149.4.49: /* Florian */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Javakurs - Organisation=&lt;br /&gt;
&lt;br /&gt;
* Webseite zum Kurs: [[Javakurs2006]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Beteiligte ==&lt;br /&gt;
Wer kennt noch jemanden der Mitmachen würde? &#039;&#039;&#039;Bitte ansprechen - immer Persönlich.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Wir suchen Helfer die:&lt;br /&gt;
* den Teilnehmern bei den Java-Programmen zu helfen (wie geht das mit dem &amp;quot;if-then-else&amp;quot;, der &amp;quot;for&amp;quot;-Schleife, wie schreibt man das &amp;quot;try-catch&amp;quot;, ...)&lt;br /&gt;
* die 10 Leuten erklären wie man mit mit Java im Detail umgeht und Fragen beantworten&lt;br /&gt;
* die vor 100 Leuten einen Vortrag halten und Java erklären&lt;br /&gt;
* die helfen diese Vorträge inhaltlich Vorzubereiten&lt;br /&gt;
&lt;br /&gt;
Teilnehmer bitte mit e-mail-Adresse eintragen&lt;br /&gt;
&lt;br /&gt;
=== Organisation, VL und Rechnerbetreuung ===&lt;br /&gt;
* Marcel&lt;br /&gt;
* Martin&lt;br /&gt;
* Arthur&lt;br /&gt;
* Florian&lt;br /&gt;
* Thomas&lt;br /&gt;
* Felix&lt;br /&gt;
* Kristian Bergmann&lt;br /&gt;
* Robert Buchholz&lt;br /&gt;
* Robert Lubkoll&lt;br /&gt;
* Ellen&lt;br /&gt;
* Karsten Bsufka&lt;br /&gt;
* Olaf Kroll Peters&lt;br /&gt;
&lt;br /&gt;
=== Rechnerbetreuer oder VL ===&lt;br /&gt;
* Jakob&lt;br /&gt;
* Karl &lt;br /&gt;
* Andreas Janson (vielleicht)&lt;br /&gt;
* Björn Lohrmann &amp;lt;lohrmann@cs...&amp;gt; (vielleicht)&lt;br /&gt;
* Sven Schneider (Vielleicht)&lt;br /&gt;
* Alex Löwer &amp;lt;anaktai@cs...&amp;gt;&lt;br /&gt;
* Julius Gehr (vielleicht Vorlesung)&lt;br /&gt;
* Karsten Bsufka (Teilweise - vielleicht sogar Mitvortragender)&lt;br /&gt;
* Linkiewicc &amp;lt;linkiewi@cs...&amp;gt;&lt;br /&gt;
* Madany &amp;lt;madany@gmx.de&amp;gt;&lt;br /&gt;
* Volker (Teilweise) &amp;lt;volkere@cs...&amp;gt;&lt;br /&gt;
* Marek &amp;lt;iwasszkie@cs....&amp;gt;&lt;br /&gt;
* Jérome Kunegis &amp;lt;kunegis@cs...&amp;gt;&lt;br /&gt;
* Thorsten Rimkus&lt;br /&gt;
* Louay&lt;br /&gt;
* Alex Rein (?)&lt;br /&gt;
* Dorian &amp;lt;sschneider@mouze.org&amp;gt;&lt;br /&gt;
* Chi-Thanh Christopher Nguyen&lt;br /&gt;
* Daniel Käs &amp;lt;dkaes@cs...&amp;gt;&lt;br /&gt;
* Felix Lindner &amp;lt;felixl@cs...&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Inhalt und Ablauf =&lt;br /&gt;
== Termin ==&lt;br /&gt;
* Mo, 03.04.2006 - Do, 06.04.2006&lt;br /&gt;
== Tagesablauf ==&lt;br /&gt;
* Für Tag 1 bis 3:&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;2&amp;quot;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E0E0E0&amp;quot;&lt;br /&gt;
 !von&lt;br /&gt;
 !bis&lt;br /&gt;
 !was?&lt;br /&gt;
 |- bgcolor=&amp;quot;#F0F0F0&amp;quot;&lt;br /&gt;
 |9:15&lt;br /&gt;
 |10:15&lt;br /&gt;
 |Vorlesung&lt;br /&gt;
 |- bgcolor=&amp;quot;#F8F8F8&amp;quot;&lt;br /&gt;
 |10:30&lt;br /&gt;
 |12:00/12:30&lt;br /&gt;
 |Übung&lt;br /&gt;
 |- bgcolor=&amp;quot;#F0F0F0&amp;quot;&lt;br /&gt;
 |12:30&lt;br /&gt;
 |13:15&lt;br /&gt;
 |Mittagspause&lt;br /&gt;
 |- bgcolor=&amp;quot;#F8F8F8&amp;quot;&lt;br /&gt;
 |13:15&lt;br /&gt;
 |14:00&lt;br /&gt;
 |Vorlesung&lt;br /&gt;
 |- bgcolor=&amp;quot;#F0F0F0&amp;quot;&lt;br /&gt;
 |14:15&lt;br /&gt;
 |16:30&lt;br /&gt;
 |Übung&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Themen ==&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;2&amp;quot;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E0E0E0&amp;quot;&lt;br /&gt;
 !Tag Nr.&lt;br /&gt;
 !Vormittag&lt;br /&gt;
 !Nachmittag&lt;br /&gt;
 |- bgcolor=&amp;quot;#F0F0F0&amp;quot;&lt;br /&gt;
 |[[{{PAGENAME}}/Tag 1|Tag 1]]&lt;br /&gt;
 |Hello, World!&lt;br /&gt;
 |Methoden und Schleifen&lt;br /&gt;
 |- bgcolor=&amp;quot;#F8F8F8&amp;quot;&lt;br /&gt;
 |[[{{PAGENAME}}/Tag 2|Tag 2]]&lt;br /&gt;
 |Modularisierung mit Klassen und Objekten&lt;br /&gt;
 |OO-Vertiefung und Klassenbibliothek&lt;br /&gt;
 |- bgcolor=&amp;quot;#F0F0F0&amp;quot;&lt;br /&gt;
 |[[{{PAGENAME}}/Tag 3|Tag 3]]&lt;br /&gt;
 |Strukturiertes Programmieren&lt;br /&gt;
 |Effizient Fehler finden und Testen&lt;br /&gt;
 |- bgcolor=&amp;quot;#F8F8F8&amp;quot;&lt;br /&gt;
 |[[{{PAGENAME}}/Tag 4|Tag 4]]&lt;br /&gt;
 |Projektaufgabe&lt;br /&gt;
 |Projektaufgabe&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Allgemeine Ziele, Überlegungen und Ideen ==&lt;br /&gt;
* [[{{PAGENAME}}/Allgemeine Lernziele|Allgemeine Lernziele]]&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
&#039;&#039;&#039;Sun-JAVA-API&#039;&#039;&#039;&lt;br /&gt;
* [http://java.sun.com/j2se/1.4.2/docs/api/ Java-API zu 1.4.2] sollte jeder jederzeit beim Programmieren offenhaben&lt;br /&gt;
* [http://java.sun.com/docs/books/jls/third_edition/html/j3TOC.html The Java Language Specification, Third Edition]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Java ist auch eine Insel&#039;&#039;&#039;&lt;br /&gt;
* ziemlich einfach geschrieben und viel erklärt am Anfang, gute Einführung, die aber auch in die Tiefe geht (v.a. gedruckt auch in die BREITE :-)&lt;br /&gt;
* Über ein Dutzend der vierten Auflage in der UB-Lehrbuchsammlung erhältlich (OPAC derzeit down, daher kein Link)&lt;br /&gt;
* Als kostenloses eBook [http://www.galileocomputing.de/openbook/javainsel5/ ansehen] und [http://download.galileo-press.de/openbook/javainsel5/galileocomputing_javainsel5.zip downloaden]&lt;br /&gt;
* Zu erwerben bei [http://www.amazon.de/exec/obidos/ASIN/3898427471/thetruth0e Amazon in deutsch]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Structure and Interpretation of Computer Programs&#039;&#039;&#039;&lt;br /&gt;
* &amp;quot;Read the book. Do the exercises. It will teach you more about the essence of programming than any other book I know. -- ChristianLemburg&amp;quot;. Dem kann ich mich nur anschließen. --[[Benutzer:Martin Häcker|Martin Häcker]]&lt;br /&gt;
* [http://mitpress.mit.edu/sicp/ SICP Webseite]&lt;br /&gt;
* [http://mitpress.mit.edu/sicp/full-text/book/book.html Ebook]&lt;br /&gt;
* [http://www.swiss.ai.mit.edu/classes/6.001/abelson-sussman-lectures Video-Lectures zu dem Buch]&lt;br /&gt;
* [http://www.amazon.de/exec/obidos/ASIN/0262011530/thetruth0e englisch bei Amazon]&lt;br /&gt;
* [http://www.amazon.de/exec/obidos/ASIN/3540423427/thetruth0e deutsch bei Amazon]&lt;br /&gt;
&lt;br /&gt;
= TODOs =&lt;br /&gt;
&lt;br /&gt;
== Zeitplan ==&lt;br /&gt;
&lt;br /&gt;
  8      20.02.-26.02.       Räume, Web, Mail, Tutoren werben, allg. Werbung&lt;br /&gt;
  9      27.02.-05.03.       Stoffaufteilung/Zeitplan&lt;br /&gt;
 10      06.03.-12.03.       Aufgabenentwurf fertig&lt;br /&gt;
 11      13.03.-19.03.&lt;br /&gt;
 12      20.03.-26.03.       Aufgaben fertig und besprochen&lt;br /&gt;
 13      27.03.-02.04.       Beamer, Technik, Getränke, Kopien, Tutoren anleiten &amp;amp; einteilen&lt;br /&gt;
 14      03.04.-07.04.       Veranstaltung&lt;br /&gt;
&lt;br /&gt;
== Unassigned ==&lt;br /&gt;
* Eintrag in den [[Termine]]n aktuell halten&lt;br /&gt;
&lt;br /&gt;
== Arthur ==&lt;br /&gt;
* Räume&lt;br /&gt;
&lt;br /&gt;
== Martin ==&lt;br /&gt;
== Florian ==&lt;br /&gt;
&lt;br /&gt;
Bäckerei (3.Tag)&lt;br /&gt;
&lt;br /&gt;
== Felix ==&lt;br /&gt;
== RobertL und Felix ==&lt;br /&gt;
== RobertB ==&lt;br /&gt;
&lt;br /&gt;
= Treffen 6.2.06 =&lt;br /&gt;
Bekanntmachung:&lt;br /&gt;
Termin 3.4.-7.4.&lt;br /&gt;
&lt;br /&gt;
== Webseite ==&lt;br /&gt;
* Absolute anfänger&lt;br /&gt;
* wenn weniger als hundert bis bestimmtes datum&lt;br /&gt;
* dann auch mit anderen imperativen sprachen&lt;br /&gt;
* CS-ACCOUNT&lt;br /&gt;
* Anmeldung&lt;br /&gt;
* Überweisung / Persönlich vorbeibringen&lt;br /&gt;
&lt;br /&gt;
= Treffen 10.3.06 =&lt;br /&gt;
# Allgemeines:&lt;br /&gt;
## ToDo: &lt;br /&gt;
##* Artur: Raum mieten im MA043 mit Technik (2 Mikrofone tragbar, Funk)&lt;br /&gt;
##* Artur: Rechnerbetrieb für Rechnerräume ansprechen&lt;br /&gt;
##* Artur: Kamera für Bildaufnahmen&lt;br /&gt;
# Rechnerübungen:&lt;br /&gt;
## ToDo:&lt;br /&gt;
##* Handout mit wichtigen Tipps:&lt;br /&gt;
##* Ausführen, Compiler, URLs, Bibliotheksfunktionen, &amp;quot;HelloWorld&amp;quot;, usw.&lt;br /&gt;
##* nächste Woche:&lt;br /&gt;
##** Aufgaben müssen ausformuliert sein,&lt;br /&gt;
##** Miniaufgaben ferig sein, alles selbst implementiert haben&lt;br /&gt;
##** Zeit f. Implementierung messen (nicht von den Aufgabenstellern)&lt;br /&gt;
##** Kleingruppen machen Vorschlag, Vortragender schaut drüberund nickt ab&lt;br /&gt;
 &lt;br /&gt;
Fazit:&lt;br /&gt;
* Aufgaben ausarbeiten und ausformulieren (die Leute die sich das ausgedacht haben), ein anderer programmiert Aufgabe Probe&lt;br /&gt;
&lt;br /&gt;
Ausarbeitungen:&lt;br /&gt;
# LE: Robert B., Dorian, Ellen&lt;br /&gt;
# LE: Sven, Daniel&lt;br /&gt;
# LE: Artur, Robert L., Felix&lt;br /&gt;
# LE: Florian, Martin&lt;br /&gt;
&lt;br /&gt;
Aufgaben so designen, so dass sie anständig auf Papier ausdruckbar sind (im Wiki hinterlegen)&lt;br /&gt;
&lt;br /&gt;
Zusatzaufgaben auf seperaten Zettel, Ausgabe des Zettels erst bei Nachfrage in der Übung (nicht ankündigen)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Freitagsergebnisse der Ausarbeitung für LEs: siehe Anhang&lt;br /&gt;
&lt;br /&gt;
Offenes:&lt;br /&gt;
* Eclipse schon am 2. Tag einsetzen?&lt;br /&gt;
* Thema Gute Namen?&lt;br /&gt;
* Studenten mit &amp;quot;Migrationshintergrund&amp;quot;&lt;br /&gt;
* zeiteinteilung für Aufgaben 1/10? 1/5? -&amp;gt; Verhältnis Aufgabe - Zeit&lt;br /&gt;
** Tagabhängig (1. Tag: Faktor 10, 3.Tag: Faktor 2 z.Bsp. ...)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Anhang zu 2.2.: ==&lt;br /&gt;
&lt;br /&gt;
=== 1.LE  ===&lt;br /&gt;
Handout:&lt;br /&gt;
# Melde Dich an einer Sun an und wähle einen Editor Deiner Wahl. Wenn Du keinen kennst dann nimm Editor xy.&lt;br /&gt;
# Richtig/Falsch-Tabellen:&lt;br /&gt;
#* kopieren von einer Datei aus Verzeichnis&lt;br /&gt;
#* Umbenennen von Dateien&lt;br /&gt;
#* 2 Varianten für Aufruf von Dateien (mit class / richiger Aufruf), Am Ende wird bei richtigem Ausführen der Datei in der Ausgabe stehen, was als nächstes zu tun ist (nächste Aufgabe).&lt;br /&gt;
# Kassenbon - Programm schreiben&lt;br /&gt;
#* Kassenbon mit print-Befehlen ausgeben&lt;br /&gt;
#* Vorgabe: nichts in Java&lt;br /&gt;
#* Aufgabenstellung:&lt;br /&gt;
#** links: Ware, Mitte: Anzahl, rechts: Preis Stornos, Gesamtpreis am Ende des Bon ausgeben lassen, MwSt&lt;br /&gt;
#*** keine arrays - lauter print-Ausgaben mit Variablen z.Bsp.: int anzahlApfel = 4;&lt;br /&gt;
#*** Methode vorgeben, was an Produkten exitsiert, Variable mit Geldmaximum - wovon Produkte abgezogen werden&lt;br /&gt;
#*** viele if/then - Beziehungen mit Geldausgaben (zu teuer, nicht genug Geld usw.)&lt;br /&gt;
#***  mit globalen Variablen arbeiten&lt;br /&gt;
&lt;br /&gt;
=== 2.LE ===&lt;br /&gt;
&lt;br /&gt;
* Inhalte siehe Wikisite (Methoden,Arryas, Schleifen)&lt;br /&gt;
&lt;br /&gt;
Deltas:&lt;br /&gt;
* if - Bedingungen in Methoden auslagern&lt;br /&gt;
* String - Vergleiche&lt;br /&gt;
* 1. Programm mit syntaxfehlern&lt;br /&gt;
* 2. Programm mit Vorgaben&lt;br /&gt;
* Nulltes Elemten als erstes Element im Array (Länge 10, Index 9)&lt;br /&gt;
* &amp;quot;Nullpointer Exception&amp;quot;&lt;br /&gt;
* Tabelle richtig/falsch (siehe 1. LE)&lt;br /&gt;
&lt;br /&gt;
Viele kleine Aufgaben (5-6 Zeilen)&lt;br /&gt;
* Bon mit vielen print-Ausgaben aus LE1 umwandeln in Array&lt;br /&gt;
** sollen Studies besser machen ...&lt;br /&gt;
** Fibonacci&lt;br /&gt;
&lt;br /&gt;
Einteilung in Aufgaben und Zusatzaufgaben&lt;br /&gt;
Parsen von Kassenzettel an Stelle der Parser-Aufgabe&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 3.LE ===&lt;br /&gt;
* Inhalte auf Notebook von Robert L.(nachreichen)/oder im Wiki(?)&lt;br /&gt;
&lt;br /&gt;
Deltas:&lt;br /&gt;
* &amp;quot;Löschen&amp;quot; auf 4.LE verschieben&lt;br /&gt;
* mehr Aufgaben (aus LE4?)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 4.LE ===&lt;br /&gt;
* Inhalte werden nachgereicht von Florian&lt;br /&gt;
&lt;br /&gt;
Deltas:&lt;br /&gt;
* Thema Java-IO in LE 5 reinnehmen&lt;br /&gt;
&lt;br /&gt;
= Treffen 17.3.06 =&lt;br /&gt;
Robert, Sven, wo wart ihr?&lt;br /&gt;
&lt;br /&gt;
Was machen wir wenn manche Leute mit dem Tempo nicht mitkommen?&lt;br /&gt;
* Wir können die Übung wiederholen&lt;br /&gt;
* Wir können die Vorlesung um einen halben Tag verschieben&lt;br /&gt;
* Wir haben noch Aufgaben in der Hinterhand, damit Leute, die wiederholen müssen, das tun können&lt;br /&gt;
* Vielleicht verzögern wir die Vorlesung auch gar nicht, sondern versetzen nur die Übungen&lt;br /&gt;
* Wenn zu viele ein Problem haben, dann laden wir die in spezielle Gruppen ein.&lt;br /&gt;
* Ob wir &amp;quot;Ghetto&amp;quot;-Gruppen machen, oder ob wir die Langsameren doch lieber in den durchmischten Gruppen lassen müssen wir nochmal Diskutieren - in der Gruppe kann sich auch einiges Ausgleichen.&lt;br /&gt;
&lt;br /&gt;
Für nächste Woche&lt;br /&gt;
* Aufgaben Ausarbeiten und Programmieren&lt;br /&gt;
* Vorträge Aufbauen&lt;br /&gt;
* Dann ins Wiki!&lt;br /&gt;
&lt;br /&gt;
Wir wollen versuchen auf standardisierte Begriffe zurückzugreifen - wenn wir sie überhaupt verwenden. Arthur macht das. :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* gute namen regeln besprechen und vereinheitlichen&lt;/div&gt;</summary>
		<author><name>130.149.4.49</name></author>
	</entry>
</feed>